Hier noch mal ein Beispiel-Code:
Code:
var
SysIL : UInt;
Result : HIMAGELIST;
IList : TImageList;
const
IID_IImageList: TGUID = '{46EB5926-582E-4017-9FDF-E8998DAA0950}'; // Das hab ich so im Internet gefunden
SysIL := SHGetImageList(SHIL_SMALL,IID_IImageList, Pointer(Result));
If SysIL = S_OK Then
Begin
IList := TImageList.Create(self);
IList.Handle := Result;
IList.ShareImages := true;
End;
Label1.Caption := IntToStr(IList.Height);
Oder auch mit "SHGetFileInfo(... SHGFI_SYSICONINDEX or SHGFI_SMALLICON)". Ich bekomme mit der Option "Hochauflösung aktivieren" 32x32 Icons. Dabei spiel es keine Rolle, welche Skalierung und Auflösung ich nutze. Die 16x16 bekomme ich nur, wenn "Hochauflösung aktivieren" bei den Projektoptionen ausgeschaltet ist.
"LoadImage" ist wohl nicht für die System Icon Liste zu gebrauchen?
Michael