nur die frage ist, wo ist der fehler?
hjabe das ganze jetzt soweit verinfacht, das das push ebx und pop ebx noch drinnen bleibt (aber meine eigenen funktionen weg sind)
Delphi-Quellcode:
procedure TRemoteNetworkInfo.RefreshAD;
var
dom : IADsContainer;
i : integer;
begin
//for i:=0 to Count-1 do Item[i].fDeleted := TRUE;
ADsGetObject('
WinNT://' + '
HOST', IADsContainer,
dom);
dom.Filter := VarArrayOf(['
computer']);
//ADsEnumerateObjects(dom, AD_RefreshComputer);
//dom := nil;
for i:=inherited Count-1
downto 0
do
sleep(0);
(*
if Item[i].fDeleted then begin
Item[i].Free;
Delete(i);
end;
*)
end;
das problem ist, das zwischen dem push ebx und dem pop ebx der StackPointer um 4 Bytess verschoben ist (vor dem pop EBX müsste noch ein weiteres element gepopt werden, damit der Stack wieder richtig ist)