Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Programm-Icon anhand des Programm-Pfades rausfinden (https://www.delphipraxis.net/108608-programm-icon-anhand-des-programm-pfades-rausfinden.html)

Helmi 16. Feb 2008 14:21


Programm-Icon anhand des Programm-Pfades rausfinden
 
Hallo,

wie kann ich ein Programm-Icon anhand der Programm-Pfades rausfinden?

mkinzler 16. Feb 2008 14:35

Re: Programm-Icon anhand des Programm-Pfades rausfinden
 
Meinst du anhand des Dateinamens?

Helmi 16. Feb 2008 14:37

Re: Programm-Icon anhand des Programm-Pfades rausfinden
 
ja genau

mkinzler 16. Feb 2008 14:39

Re: Programm-Icon anhand des Programm-Pfades rausfinden
 
Ermittle die Endung mit ExtractFilePath() und ermittle dann das Icon dafür.

Helmi 16. Feb 2008 14:46

Re: Programm-Icon anhand des Programm-Pfades rausfinden
 
du hast mich falsch verstanden.

Nehmen wir mal an ich hab einen folgenden Pfad mit dateinamen: "C:\Programme\Microsoft Office\WinWord.exe".
Nun würd ich gerne das Icon dieser Exe (die aber nicht geladen ist) auslesen. Nämlich das selbe, was im
Windows-Explorer als Icon zu sehen ist.

mkinzler 16. Feb 2008 14:50

Re: Programm-Icon anhand des Programm-Pfades rausfinden
 
Das Icon steckt ja in der Ressource dieser Datei. Ohne sie zu laden wird es nicht möglich sein es auszulesen.

taaktaak 16. Feb 2008 14:50

Re: Programm-Icon anhand des Programm-Pfades rausfinden
 
Vielleicht so ...

Delphi-Quellcode:
Dieses Beispiel holt sich das Icon von NotePad und zeichnet es auf die Form:

uses ShellApi;

procedure TForm1.Button1Click(Sender:TObject);
var IconIndex : Word;
    h        : hIcon;
begin
  IconIndex:=0;
  h:=ExtractAssociatedIcon(HInstance,
                           'C:\WINDOWS\NOTEPAD.EXE',
                           IconIndex);
  DrawIcon(Form1.Canvas.Handle,10,10,h);
end;

Helmi 16. Feb 2008 15:11

Re: Programm-Icon anhand des Programm-Pfades rausfinden
 
dein code erzeugt ne accessviolation

taaktaak 16. Feb 2008 15:12

Re: Programm-Icon anhand des Programm-Pfades rausfinden
 
hmmm?????????????????? - ich schau mal, was bei mir passiert

taaktaak 16. Feb 2008 15:24

Re: Programm-Icon anhand des Programm-Pfades rausfinden
 
Sorry,
bei mir wird zwar keine Zugriffsverletzung erzeugt, aber das Icon wird auch nicht gefunden. Mit folgender Zeile funktioniert es (egal ob Notepad gerade aktiv ist oder nicht):
Delphi-Quellcode:
//..
h:=ExtractIcon(0,'C:\WINDOWS\NOTEPAD.EXE',IconIndex);
//..
Sorry, da muss ich mal meine Schnipsel-Kiste aufräumen


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:27 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz