int newAmmoValue = 99999;
int address = 0x771346D0;
int added = address + 0xC4;
WriteProcessMemory(handle, (LPVOID)added, &newAmmoValue, sizeof(newAmmoValue), 0);
我想写进程内存,但我不知道如何给一个地址添加偏移量。
这是我想达到的目的。https: /gyazo.com5768b622f8c7f66c00e5be68aae42c90。
你需要去引用第一个地址,这是一个指针。
uintptr_t FindDMAAddy(HANDLE hProc, uintptr_t ptr, std::vector<unsigned int> offsets)
{
uintptr_t addr = ptr;
for (unsigned int i = 0; i < offsets.size(); ++i)
{
ReadProcessMemory(hProc, (BYTE*)addr, &addr, sizeof(addr), 0);
addr += offsets[i];
}
return addr;
}
uintptr_t finalAddr = FindDMAAddy(hProc, 0x771346D0, {0xc4});
int newAmmoValue = 99999;
WriteProcessMemory(handle, (LPVOID)finalAddr, &newAmmoValue, sizeof(newAmmoValue), 0);