Forum: Win32/Win64 API (native code)
Delphi
by sk0r,
5. Okt 2007
Das denke ich ja auch, mir wurde aber gesagt, dass in diesem Fall, also obigen Beispiel, man
das nicht beachten muss, da die Bytes für stdcall benutzt werden. Man überschreibt also quasi
das stdcall, welches aber in der neuen Prozedur rekonstruiert wird, somit also kein Verlust entsteht.
So habe ich das verstanden, was mit von jemanden aus einem anderen Forum erklärt wurde.
Ich zitiere ihn...
Forum: Win32/Win64 API (native code)
Delphi
by sk0r,
5. Okt 2007
Naja, es ist schon die richtige Größe.
Wenn ich z.B. Sleep aus der kernel32.dll hooken möchte, dann bestehen
die Bytes, die ich überschreibe aus dem stdcall. Dies rekonstruiere ich
bei der neuen Sleep wieder.
Falls es jemand anderen noch interessiert, hier der Code mit Beispiel.
Forum: Win32/Win64 API (native code)
Delphi
by sk0r,
30. Sep 2007
Hi,
ich möchte gerne eine Routine durch einen Detour hooken.
Nur leider klappt es bei mir nicht. Ich möchte die ersten
fünf Bytes der zu hookenden Routine mit einem jmp + address
überschreieben, welche zu einem allozierten Speicher zeigt.
In diesem allozierten Speicherbereich habe ich mir zehn
Bytes reserviert: Die ersten fünf sind noch von der Routine,
denn sie müssen ja auch ausgeführt...