Hi!!
Ich will ein Programm schreiben, dass das Icon aus Dateien ausliest.
Mit
SaveResIconToFile klappt das auch ziemlich gut (Hab den Code etwas abgewandelt, sodass das Icon nicht gespeichert, sondern nur in ein TImage geladen wird)!
Nun gibt es aber Dateien, die keinen eigenen Icons besitzen, sondern mit einer Anwendung verknüpft sind (*.doc)
Bei so einer Datei möchte ich, dass es dann das icon der verknüpften Datei, also z.B. das MicroSoft-Word-Logo lädt.
Also wollte ich die
GetProgramAssociation-Funktion verwenden und aus dem Rückgabewert (dem Pfad der Anwendung) das Icon extrahieren.
Nun gibt GetProgrammAssociation zum Teil solche oder noch kompliziertere Pfade zurück (Hier Word):
Quelltext
1:
| 'C:\Programme\Microsoft Office\OFFICE11\WINWORD.EXE" \n \dde |
Das Icon wird nicht ordnungsgemäß geladen!
Ich denke das liegt an den "\n" und "\dde" - Was ist das überhaupt und wie bekommt man das weg?
Hier nochmal mein Code:
Delphi-Quelltext
1: 2: 3: 4: 5: 6:
| if ico.Empty=true then begin s:=ExtractFileExt(JvOpendialog1.FileName); Delete(s,1,1); SaveResIconToFile(Ico,GetProgramAssociation(s)); end; |
Habt ihr vielleicht eine Idee, wie ich das Icon richtig extrahieren kann?
Sorry für den langen Text und danke im Voraus,
lotus