我需要这方法的帮助。
我在C ++中使用相同的代码,但在Qt值上不是相同的例子
DWORD address = 0x004D2004;
DWORD offset = 0x4;
int value=0;
ReadProcessMemory(_hwnd,(void*)address + offset,&value,(DWORD)sizeof(value));
QMessageBox::Information(this,QString::number(value),tr("Value is:"),QMessageBox::ok);
如果我读完结果示例,则没有Qt:5
否则我尝试用Qt读取值,值为例:49951447
anoyone知道解决方案吗?
答案 0 :(得分:0)
确保您以管理员身份进行编译。
请确保您要为目标进程使用相同的位数,x86表示x86,x64表示x64。
您对ReadProcessMemory()的调用缺少最后一个参数,即“读取的字节数”。您将需要检查以进行错误检查。
在调用ReadProcessMemory()之后调用GetLastError()并检查ReadProcessMemory()的返回值以进行错误检查。
这些技巧将解决您的问题。