10.09.2012, 00:32
(Dieser Beitrag wurde zuletzt bearbeitet: 10.09.2012, 00:33 von iNvIcTUs oRCuS.)
Das kann auch nicht funktionieren...
Anstelle von "Pointer($E98492D201)" erwartet die Funktion die Daten die geschrieben werden sollen. In deinem Fall weiß die Funktion nichts damit anzufangen.
Ich würde das der Funktion als Array übergeben. Ist eigentlich am einfachsten.
Ich lass mich natürlich gerne auch eines Besseren belehren.
Das würde dann z.B. so aussehen.
[code=Delphi]var
JMPCC: array [0..4] of byte = ($E9, $84, $92, $D2, $01);
Written: SIZE_T;
begin
WriteProcessMemory(Pidhandle, Pointer($00566d77), @JMPCC, 5, Written);
end;[/code]
Anstelle von "Pointer($E98492D201)" erwartet die Funktion die Daten die geschrieben werden sollen. In deinem Fall weiß die Funktion nichts damit anzufangen.
Ich würde das der Funktion als Array übergeben. Ist eigentlich am einfachsten.
Ich lass mich natürlich gerne auch eines Besseren belehren.
Das würde dann z.B. so aussehen.
[code=Delphi]var
JMPCC: array [0..4] of byte = ($E9, $84, $92, $D2, $01);
Written: SIZE_T;
begin
WriteProcessMemory(Pidhandle, Pointer($00566d77), @JMPCC, 5, Written);
end;[/code]
(09.09.2012, 18:35)darius83 schrieb: Rein theoretisch kann ich ja jetzt an beiden einen Jump schreiben und eax dann auf einen festen Wert setzen (mov eax,3A98 z.B.). Mit CE klappt das ganze auch wunderbar.Aber bedenke... Das funktioniert nur wenn auch nur die Geldadresse durch diese Befehle laufen. Wenn durch diese Befehle auch Adressen laufen die für das Spiel von anderen Nöten sind kann es sein das es crasht. Sowas muss nicht immer sofort passieren, kann aber z.B. beim Level laden oder im Home Screen vorkommen. Je nachdem halt...
Irren ist menschlich. Aber wer richtigen Mist bauen will, braucht einen Computer !!!
Traineranfragen per PM werden prinzipiell gelöscht...
Traineranfragen per PM werden prinzipiell gelöscht...