Über Speicheradressen Wert ändern?
-
Hi,
ich weis das es möglich ist. Aber leider weis ich net wie.
Ich habe eine Speicheradresse zB 0012119B
Diese Speicheradresse beinhaltet den Wert 2.
Doch ich will das die Speicheradresse den Wert 5 beinhaltet.
Mein momentanes wissen reicht nur soweit das der Pointer auf eine Deklarierte Variable zeigt. Also zb:
Int32 Variable1
Aber wie soll er denn auf die Speicheradresse 0012119B zeigen UND diese verändern?
-
Benutz die Suchfunktion, es gibt Haufenweise Post über dieses Thema.
Das Problem dürfte wohl auch eher mit Win32 als mit C++/CLI zu lösen sein.Simon
-
Dieser Thread wurde von Moderator/in Jochen Kalmbach aus dem Forum C++/CLI mit .NET in das Forum WinAPI verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
Wenn die Adresse in deinem Prozessraum liegt:
*(unsigned*)0xFFFFFFFF = 10;Wenn nicht, musst du Read/WriteProcessMemory verwenden.
-
Müsste das nicht so gehen?
Int wert; &wert = 0012119B; wert = 5;
-
Nein, so geht das nicht.
Dies wäre eine mögliche Variante:int *i_ptr = (int*)(0x0012119B); *i_ptr = 5;Du hast in deiner Variante bei der Daklaration den * vergessen und hast versucht, die Variable über den Adressoperator zu dereferenzieren. Auch müssen, soweit ich weiss, hexadezimale Zahlen mit 0x beginnen. Und versuche besser, dir die Adresse des zu ändernden Speicherbereichs mithilfe des Adressoperators o.ä. zu beschaffen, anstatt sie "manuell" einzugeben.
MfG, Jochen