Was anderes ...
Code:
for i := 0 to dateien_sl.Count - 1 do
begin
...
//Icon
SHGetFileInfo(PChar(dateien_sl.Strings[i]), 0, file_info_fi, SizeOf(file_info_fi), SHGFI_SYSICONINDEX or SHGFI_ICON);
Irre ich mich, oder enthält das Liste nur *.tmp-Dateien? Das Icon ist doch jedesmal gleich, muss also nicht für jede Datei extra ermittelt werden.