Delphi-PRAXiS
Seite 3 von 3     123   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Icon aus beliebiger Datei extrahieren (z.B. *.lnk) (https://www.delphipraxis.net/55412-icon-aus-beliebiger-datei-extrahieren-z-b-%2A-lnk.html)

ichbins 20. Okt 2005 17:07

Re: Icon aus beliebiger Datei extrahieren (z.B. *.lnk)
 
integer ist der Typ eines Handles. Du versuchst, einem Icon.Handle ein Icon zuzuweisen. Du musst einem Icon.Handle ein Icon.Handle zuweisen.

Martin K 20. Okt 2005 17:12

Re: Icon aus beliebiger Datei extrahieren (z.B. *.lnk)
 
Hmm...
irgendwie geht's immer noch nich.

Selbst bei:
Delphi-Quellcode:
  Application.Icon:=fileicon(....);
hab ich das normale Windows-Programm-Symbol bei beiner Application, aber nicht das der '.lnk

Martin K 20. Okt 2005 17:17

Re: Icon aus beliebiger Datei extrahieren (z.B. *.lnk)
 
Ou, Ou Ou Ou.... :wall:

hab die ganze Zeit den Falschen Ordner übergeben, und da gab's die *.lnk Datei dann natürlich nich.

Jo, bei mir funzts jetzt auch prima!!! :thumb:

Vielen Dank, nochmal...
hast mir wirklich weitergeholfen!
:spin2:

Martin K 20. Okt 2005 17:28

Re: Icon aus beliebiger Datei extrahieren (z.B. *.lnk)
 
Für alle, die das Icon aus einer beliebigen Datei haben möchten,
hier der endgültige Quellcode:


Delphi-Quellcode:
uses ... ShellApi;

...

function FileIcon(FileName: String): TIcon;
var FileInfo: TSHFileInfo; AIcon: TIcon;
begin
  FillChar(FileInfo,SizeOf(FileInfo),#0);
  SHGetFileInfo(PChar(FileName),0,FileInfo,SizeOf(FileInfo),SHGFI_ICON or SHGFI_LARGEICON);
  AIcon:=TIcon.Create;
  Try
    AIcon.Handle:=FileInfo.HIcon;
    AIcon.Transparent:=True;
  Except end;
  Result:=AIcon;
end;
Vielen Dank nochmal an ichbins


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:43 Uhr.
Seite 3 von 3     123   

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