den RAM von Anfang bis Ende auslesen
-
Also ich bin wirklich noch nicht sehr erfahren im Programmieren (bemerkt man vielleicht) aber in allen c++ Büchern die ich gesehen habe heißt es, dass man mit Pointern auf RAMbereiche zeigen kann, die nicht zu dem Programm gehören und sie so auch verändern kann, was for-schleifen mit Pointern die in- oder dekrementiert werden sehr gefährlich macht.
Ausprobiert habe ich das genau deswegen nicht... korrigiert mich wenn ich falsch liege aber für mich hört sich das so an als könnte ich einen Zeiger durch den RAM laufen lassen und bei einem treffer über den Zeiger den Wert verändern kann.
Oder nicht
-
Was erwartest du jetzt als Antwort? Natürlich hast du Unrecht und was auch immer du zu beobachten gemeint hast, hast du offensichtlich falsch interpretiert. Wie kommst du darauf, dass die Zeiger, deren Werte du verändert hast, nicht auf Speicher von deinem eigenen Prozess zeigen würden?
Was du beschreibst gibt es seit über 20 Jahren nicht mehr.
-
Alles klar...
Die cheatengine gibt es aber ja, das ist eine Tatsache. Also muss es ja irgendwie gehen. Nicht unbedingt mit Zeigern, aber es geht.
Wie könnte die cheatengine das bewerkstelligen? (Ich erwarte jetzt keine codes aber es wäre cool wenn jemand eine grundlegende funktionsweise schildern könnte, die das möglich macht)
-
Liest du die Antworten eigentlich?
-
Here you go:
-
Ich habe schon verstanden dass der Prozess (nur) wenn er die Rechte dazu hat auch auf andere Speicherbereiche zugreifen kann als nur seinen eigenen. Aber wo ist festgelegt was für Rechte ein Prozess hat?
-
multipilz5 schrieb:
Aber wo ist festgelegt was für Rechte ein Prozess hat?
manni66 schrieb:
Liest du die Antworten eigentlich?
SeppJ schrieb:
Wie das im speziellen geht, das kommt auf das jeweilige Betriebssystem an, denn Prozesse, deren Speicher, und Rechteverwaltung sind allesamt dessen Aufgabenbereich.
-
Tut mir leid. Ich korrigiere: Wo ist das bei Windows (10) festgelegt?
-
multipilz5 schrieb:
Tut mir leid. Ich korrigiere: Wo ist das bei Windows (10) festgelegt?
kommt auf deinen benutzer an
hoff das hilft
lg
-
Ich fürchte, das ist nicht ganz so einfach.
Eine Lösung könnte sein, eine DLL in den zu untersuchenden Prozess zu laden (Stichwort DLL Injection), die dann entsprechende Windows Funktionen aufruft (GetProcessHeaps, HeapWalk, etc.) und die Ergebnisse an den aufrufenden Prozess weiterreicht.
-
So kannst du unter Windows die genutzten Speicherbereiche rausfinden: