2012-04-01 2 views
2

Wie kann ich ein Fenster-Symbol von seinem Zeiger oder Process/Process Name bekommen? Das Symbol wird in der Ecke des Fensters oder in der Taskleiste oder im ALT-Tab-Menü angezeigt.Wie bekomme ich ein Fenster-Symbol in C#

+3

Den Fenstergriff finden und WM_GETICON senden –

+0

@DavidHeffernan Das funktioniert nur unter Windows Mobile, nicht? –

+0

Duplizieren http://stackoverflow.com/questions/462270/get-file-icon-used-by-shell – Odys

Antwort

2

lesen über Icon.ExtractAssociatedIcon:

Gibt ein Symbol Darstellung eines Bildes, das in der angegebene Datei enthalten ist.

private void ExtractAssociatedIconEx() 
{ 
    Icon ico = 
     Icon.ExtractAssociatedIcon(@"C:\WINDOWS\system32\notepad.exe"); 
    this.Icon = ico; 

} 

http://msdn.microsoft.com/en-us/library/system.drawing.icon.extractassociatedicon.aspx

Dies wird nicht bei jedem Prozess arbeiten, aber es ist ein guter Anfang ..

auch bei diesen Antworten einen Blick - How can I get the icon from the executable file only having an instance of it's Process in C#

+0

@CarsenDanielIhre Begrüßung, wenn Ihnen die Antwort gefallen hat, überprüfen Sie bitte die grüne Markierung und +1 –

+1

Diese Antwort ist falsch. Bei den Fragen wird nach dem Symbol gefragt, das mit einem Fenster und nicht mit einer ausführbaren Datei verknüpft ist. –

+0

@DavidHeffernan Lesen Sie die Frage erneut, wie kann ich ein Fenster-Symbol von seinem Zeiger oder Process/Process Name erhalten? (Prozessname) –