Я понял, что моя версия получения правильного базового адреса
был неправильным
Process[] iexp = Process.GetProcessesByName("Solitaire");
if (iexp.Length == 0) {
//EXIT
}
Process internet = iexp[0];
uint baseAddress = (uint)internet.MainModule.BaseAddress.ToInt64();
но базовый адрес
неправильный
Я также искал в MSDN , но этот код очень странный и дает мне бесконечный цикл.
Надеюсь, вы можете мне помочь, потому что я не могу найти ни одного примера.
РЕДАКТИРОВАТЬ:
ReadProcessMemory(readHandle, ((IntPtr)(((baseAddress) + 0x14) + 0x50)), bytes, (UIntPtr)4, ref rw);
Здесь я сделал изображение своего рабочего стола. Я действительно запутался, возможно, кто-то знает, где я сделал ошибку. http: //i.stack .imgur.com / 50lva.jpg