ich habe mir ein kleines Programm mit Hilfe folgenden Tutorials gemacht:
Habe allerdings mit Visual Studio Express eine CLI-Anwendung erstellt (anstelle wie im Tutorial beschrieben eine MFC-Anwendung).
Das Lesen und Schreiben des Wertes funktioniert soweit auch gut.
Nun habe ich mich allerdings gefragt, ob man die Wertänderung der Punkte von Solitär (die ja durch hochlaufen der Zeit abnimmt) im Speicher automatisch immer anzeigen kann.
Mit meiner aktuellen Implementierung wird der Wert immer nur per Klick auf den Button lesen von dem jeweiligen Speicherbereich ausgelesen.
Dazu werden hauptsächlich folgende Funktionen verwendet, um den Wert im Pointer "value" zu speichern:
Code:
ReadProcessMemory(hProc, (LPCVOID)address1, &address2, sizeof(long), &numBytesRead); address2 = address2+offset ; ReadProcessMemory(hProc, (LPCVOID)address2, &value, sizeof(int), &numBytesRead);
Ich glaube aber nicht, dass das der richtige Weg ist und könnte mir vorstellen, dass aufgrund der Endlos-Schleife, das UI nicht mehr reagiert und Windows von dem Prozess keine Rückmeldung bekommt.
Was gibt es für elegante Möglichkeiten mein Ziel zu erreichen (z.B. Funktion innerhalb eines bestimmten Intervalls aufrufen, Callback-Funktion injecten oder sonstiges)?
Ich freue mich auf eure Antworten!