我试图检查游戏的价值,但似乎FindWindowA
无法找到我尝试过其他游戏的游戏过程而且它有效。我在Process Hacker中检查了窗口是如何调用的,它仍然与代码中的相同,但它仍然无效。
第一个project.cpp:主项目文件。
#include <iostream>
#include <Windows.h>
#include <string>
using namespace std;
DWORD pid;
DWORD Ammo = 0x01E7A938;
int MyAmmo;
int main()
{
HWND hWnd = FindWindowA(0, ("War Thunder Client"));
GetWindowThreadProcessId(hWnd, &pid);
HANDLE pHandle = OpenProcess(PROCESS_VM_READ, FALSE, pid);
while (true)
{
cout << MyAmmo << endl;
Sleep(100);
system("CLS");
}
system("Pause");
}
答案 0 :(得分:2)
首先,您应该检查FindWindowA
是否确实找到了您的窗口。如果不是hWnd
,则NULL
的值为MyAmmo
。
其次,0
的值并未设置在任何地方。它被初始化为StripeTextUtils instead of TextUtils
因为它是一个全局变量,但是否则它的值在任何地方都不会改变。