Moin SittingDuck,
mit deinem Problem, habe ich mich noch mal befasst. Obwohl ich WinXP besitze, ist die Funktion 'SHGetImageList' nicht in meiner 'Shell32.dll' enthalten. Darum konnte ich nicht weiter testen.
Die Parameter für die Funktion kann man ja hier
SHGetImageList schön nachlesen.
Delphi-Quellcode:
//so soll der Funktionsaufruf später aussehen
//DllFunc : function (iImageList : integer; riid : TIID; var ppvObj : Pointer) : hresult; stdcall;
procedure TForm1.Button1Click(Sender: TObject);
var
hInstShell32: THandle;
DllFunc: Pointer;
ProcName: PChar;
begin
hInstShell32:= LoadLibrary('Shell32.dll');
if hInstShell32<> 0 then
try
DllFunc:= GetProcAddress(hInstShell32, PChar(727));
if DllFunc= nil then
Showmessage('Die Funktion "SHGetImageList" ist in der "Shell32.dll" NICHT vorhanden!')
else
Showmessage('Die Funktion "SHGetImageList" ist in der "Shell32.dll" vorhanden!')
finally
FreeLibrary(hInstShell32);
end;
end;
edit: jetzt mit Index