Ich hab für einen Mail - Client zur Darstellung der Dateien im ListView folgende Routine:
Delphi-Quellcode:
// ShellAPI in Uses
function GetIconIndex(const AFileName: string): Integer;
var
FileInfo : TSHFileInfo;
begin
Result := -1;
if SHGetFileInfo(PChar(AFilename), 0, FileInfo, SizeOf (FileInfo), SHGFI_ICON or SHGFI_SMALLICON) <> 0 then
begin
ImageList_AddIcon(ImageList.Handle, FileInfo.hIcon);
DestroyIcon(FileInfo.hIcon);
Result := ImageList.Count -1;
end;
end;
Die Icons liegen dann in einer ImageList.
Frank