Ich hoffe mein Thema passt hier irgendwo rein und wenn es hier falsch ist, entschuldgige ich mich dafür
Also nun gut wie der Titel schon sagt habe ich ein Problem...
Ich weis wie ich die Pointer ( mit cheat engine ) finde und auch auslese
HTML Code:
Memory mem = new Memory("inkball");
int rekord = mem.ReadPointer(0x002F5FBC);
Console.WriteLine("Rekord: {0}", rekord);
Jetzt ist die Frage, wie kann ich das dauerthaft in einer Konsolenanwendung aktualisieren also sodass es immer auf dem neuesten Stand ist und wie ( die große Frage... ) kann ich die Werte von den Pointern ändern?
habe schon viel google benutz ( und ja ich kenne die seite
) und sehr viel interesantes gefunden wieHTML Code:
Process[] proc = Process.GetProcessesByName("1602");
if (proc.Length == 0)
{
MessageBox.Show("No Processes found.");
return;
}
Process po;
po = proc[0];
IntPtr rhdl = OpenProcess(0x10, false, (uint)po.Id); //ReadAccess
IntPtr whdl = OpenProcess(0x20, false, (uint)po.Id); //WriteAccess
if (rhdl == null)
{
MessageBox.Show("Readhandle nicht erstellt.", "Fehler!");
return;
}
if (whdl == null)
{
MessageBox.Show("Writehandle nicht erstellt.", "Fehler!");
return;
}
byte[] bytes = new byte[4];
uint adress = 0x560264;
uint size = sizeof(int);
uint rw = 0;
bool read;
read = ReadProcessMemory(rhdl, (IntPtr)adress, bytes, (UIntPtr)size, ref rw);
if (!read)
{
MessageBox.Show("Fehlschlag beim Lesen.");
return;
}
else
{
MessageBox.Show(BitConverter.ToInt32(bytes, 0).ToString(), "Anzahl Geld:");
}
int money = BitConverter.ToInt32(bytes, 0);
money = money + 10000;
byte[] bytes2 = new byte[4];
bytes2 = BitConverter.GetBytes(money);
bool write;
write = WriteProcessMemory(whdl, (IntPtr)adress, bytes2, (UIntPtr)size, ref rw);
if (write)
MessageBox.Show("Write erfolgreich!");
else if (!write)
{
int error = Marshal.GetLastWin32Error();
MessageBox.Show(" Write Fehlgeschlagen. Errorcode: " + error.ToString(), "Fehler!");
return;
}







