Forum: Win32/Win64 API (native code)
Delphi
by sirius,
22. Jan 2008
Und wenn wir bei optimieren sind: Jedesmal getprocaddress neu anstoßen, bedeutet ja auch jedesmal die Tabelle mit den Exporteinträgen von vorne durchwühlen, bis die strings übereinstimmen. Da kann man natürlich auch einmal durchgehen. Hier allerdings bis zum bitteren Ende, ob das Vorteile bringt :gruebel:
function getProcList(libs:array of hModule;const FunctionNames:TStringlist):boolean;...
Forum: Win32/Win64 API (native code)
Delphi
by sirius,
22. Jan 2008
Du kannst dir maximal eine Funktion bauen, dir die eine Liste füllt o.ä. (je nachdem wie flexibel du die funktionen brauchst):
function getProcList(lib:Integer;const FunctionNames:TStringlist):boolean;
var i:integer;
addr:pointer;
begin
result:=true;
for i:=0 to Functionnames.count-1 do
begin
addr:=getprocaddress(lib,pchar(functionNames.names));
Forum: Win32/Win64 API (native code)
Delphi
by sirius,
22. Jan 2008
Woran und wo gedenkst du denn zu verbessern? Kürzerer Quellcode oder kürzere Laufzeit?
Aber ich denke kaum, dass hier sinnvoll etwas rausgeholt werden kann.