![]() |
Dateiicon extrahieren - geht das auch schnell?
Hallo,
durch den Aufruf
Code:
lese ich das Icon einer Datei. Das funktioniert auch einwandfrei - nur dauert es ziemlich lange. Mein Programm liest mehrere Hundert Dateinamen ein und dieser Vorgang dauert mit Extrahieren des Icons etwa 3-4 mal so lang wie ohne.
...
SHGetFileInfo(PChar(sDatei), 0, FileInfo, SizeOf(FileInfo), SHGFI_ICON or SHGFI_SMALLICON); icon.Handle := FileInfo.hIcon; ... Gibt es da eine schnellere Methode??? |
Re: Dateiicon extrahieren - geht das auch schnell?
Ich weiß nicht, ob das schneller ist:
Delphi-Quellcode:
TIcon.Handle := ExtractIcon(HInstance, PCHAR(sDatei), 0);
|
Re: Dateiicon extrahieren - geht das auch schnell?
Zitat:
Soweit ich weiß, kann damit nur das große Icon extrahiert werden (?). Ich brauche aber das kleine ... |
Re: Dateiicon extrahieren - geht das auch schnell?
Ich schätze mal, deshalb sieht man regelmäßig Dateimanager, die erstmal die Dateiliste anzeigen und dann im Hintergrund die Icons nachladen und jedes anzeigen, sobald es verfügbar ist. Kann also durchaus sein, dass es keine schnelle Lösung gibt.
|
Re: Dateiicon extrahieren - geht das auch schnell?
Zitat:
Hmm ... guter Einwand ... :-/ |
Re: Dateiicon extrahieren - geht das auch schnell?
Zitat:
unter den ersten links bei müsste einer zum codeproject sein ;) hättest du nach ExtractIcon in der MSDN geschaut hättest du einen link zu ExtractIconEx gefunden. beim codeproject (wenn ich mich nun recht erinnere) wird ExtractIcon und ExtractIconEx (=> kleines Icon) gut erklärt. diese funktion ist keineswegs so "langsam" ;) alternativ kannst du auch das icon stretchen^^ |
Re: Dateiicon extrahieren - geht das auch schnell?
Hi,
SittingDuck benutzt dazu die Funktion ![]() |
Re: Dateiicon extrahieren - geht das auch schnell?
Possibly the icons you are looking for are already in the system imagelist? If so, they come out of RAM or cache and that might be a lot faster.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:29 Uhr. |
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