首先要找到内存地址,使用CE 5.4,载入进程GAME,查找游戏的钱,会找到3个地址,最后一个是我们要的,查看跟踪代码,可以找到偏移量为0x24C,然后记录EBX值,用HEX搜索,第一个地址就是要找的地址。
IntPtr intPtr = WIN32API.OpenProcess(0x1f0fff, 0, Process.GetProcessesByName("Game")[0].Id);
Console.WriteLine(intPtr.ToInt32());
int t = 0xA1E0C4;
int baseadress = -1;
int lpBuffer = -1;
WIN32API.ReadProcessMemory(intPtr, t, out baseadress, 4, 0);
WIN32API.ReadProcessMemory(intPtr, baseadress + 0x24C, out lpBuffer, 4, 0);
if (lpBuffer > 0)
{
lpBuffer = 9000;
WIN32API.WriteProcessMemory(intPtr, baseadress + 0x24C, out lpBuffer, 4, 0);
}
win2003测试通过,win7可能有权限问题,需要提升权限