Das ging schon zu 90% in die Richtige Richtung
Ich hab's ein bisschen für meine Bedürfnisse modifiziert, danke!
Delphi-Quellcode:
function GetFileIcon(const FileName: string; const FileMustExist: Boolean): TIcon;
var
FI: TSHFileInfo;
Attributes: DWORD;
Flags: Word;
begin
if FileMustExist then
begin
Attributes := 0;
Flags := SHGFI_ICON or SHGFI_LARGEICON;
end
else
begin
Attributes := FILE_ATTRIBUTE_NORMAL;
Flags := SHGFI_USEFILEATTRIBUTES or SHGFI_ICON or SHGFI_LARGEICON;
end;
if SHGetFileInfo(PChar(FileName), Attributes, FI, SizeOf(FI), Flags) <> 0 then
begin
result := TIcon.Create;
Result.Handle := FI.hIcon;
end;
end;