Registriert seit: 14. Mär 2003
Ort: Osnabrück
244 Beiträge
Delphi 2009 Professional
|
Re: Importierte API Funktionen erweitern...
9. Aug 2005, 14:12
Ah, Ok...
Läuft super!
Merke:
Delphi bastelt sich so ne art referenz tabelle die ca so aus sieht in ASM:
Code:
004085BC $-FF25 68779F00 JMP DWORD PTR DS:[<&user32.ReleaseDC>] ; user32.ReleaseDC
004085C2 8BC0 MOV EAX,EAX
004085C4 $-FF25 64779F00 JMP DWORD PTR DS:[<&user32.RemoveMenu>] ; user32.RemoveMenu
004085CA 8BC0 MOV EAX,EAX
004085CC $-FF25 60779F00 JMP DWORD PTR DS:[<&user32.RemovePropA>] ; user32.RemovePropA
004085D2 8BC0 MOV EAX,EAX
004085D4 $-FF25 5C779F00 JMP DWORD PTR DS:[<&user32.ScreenToClien>; user32.ScreenToClient
004085DA 8BC0 MOV EAX,EAX
004085DC $-FF25 58779F00 JMP DWORD PTR DS:[<&user32.ScrollWindow>>; user32.ScrollWindow
Und an den entsprechenden Speicherstellen auf die die Pointer zeigen steht der gleiche wert drin den mir GetProcAddress liefert...
also sollte ich mit folgendem Code hinkommen um mir die Adresse zu suchen:
Delphi-Quellcode:
function GetAddy(ModuleName, ProcName:String):Integer;
var MH:Cardinal;
begin
MH := LoadLibrary(PChar(ModuleName));
result := Integer(GetProcAddress(MH,PChar(ProcName)));
FreeLibrary(MH);
end;
Greetz
Boombuler
"Look at you, Hacker. A pathetic creature of meat and bone, panting and sweating as you run through my corridors. How can you challenge a perfect, immortal machine?"
SwapIt Highscore:
|