【发布时间】:2023-03-28 07:41:01
【问题描述】:
所以,我一直在尝试从动态地址获取值,结果是 https://gyazo.com/82ef5920d01c4452840764111c60e046 当我的健康值实际上是 100 时,
这是我到目前为止尝试做的事情,我尝试读取基地址将其存储在 temp 中,然后再次将 temp+HealthOffset 读入 temp,然后我会将 temp 读入整数并尝试打印它。当我尝试写信给它时它也不起作用
#include <Windows.h>
#include <iostream >
#define base 0x0050f4f4
using namespace std;
int main()
{
DWORD healthoffset[] = { 0xF8 };
HWND hWnd = FindWindow(NULL, "AssaultCube");
DWORD iProc = GetWindowThreadProcessId(hWnd, 0);
HANDLE hProc = OpenProcess(PROCESS_ALL_ACCESS, 0, iProc);
DWORD temp;
int storage;
ReadProcessMemory(hProc, (LPCVOID)base, &temp, sizeof(temp), 0);
ReadProcessMemory(hProc, (LPCVOID)(temp + healthoffset[1]), &temp, sizeof(temp), 0);
ReadProcessMemory(hProc, (LPCVOID)temp, &storage, sizeof(int), 0);
cout << storage;
system("PAUSE");
return 0;
}
【问题讨论】:
-
如果我错了,请纠正我,但标签中的“Windows”不是很好吗?
-
是的,我会修好它!
标签: c++ windows pointers memory