OldSchoolHack

Register / Login English

d3d hook

icon Thread: d3d hook

Join Date: Feb 2010

Posts: 4

Hi, ich hol mir den device-pointer indem ich beginscene hooke (ähnlich dem tutorial von knacker).

Um das zu tun schreibe ich an den anfang von beginscene in der d3d9.dll folgenden asm-code
push edx
mov edx, adresse
jmp edx

Alle abgeschnittenen Befehle fülle ich natürlich mit nop's und führe diese vor dem rücksprung in meiner hook-funktion aus (diese befindet sich natürlich in einer injecteten dll). Jeder veränderte register wird durch push/pop wieder hergestellt etc ...

Funktioniert alles auch so weit ganz gut.
Allerdings crasht counter-strike source wenn während dem schreiben von obigen code das spiel etwas auf den bildschirm zeichnet.
Es funktioniert also nur wenn ich im fullscreen-modus bin, das spiel minimiere und dann den hook starte.
Meine Vermutung: Bedingt durch exesives Multitasking schreibe ich den code nicht in einem rutsch in den speicher sondern stückweise, sodass es vorkommen kann, dass unvollständiger code vom spiel ausgeführt wird.

Wie kann ich das in den Griff kriegen?
Hab schon versucht alle Threads des Spiels (außer den hook-thread) zu pausieren währden ich in den Speicher schreibe, jedoch kommt der crash dann nachdem ich ich die threads vortführe ...

HELP ME