我正在尝试使用Qt与QtCreator WriteProcessMemory。 当我按下button,它不写。 这里是我使用的代码,如果任何人都可以帮助。
#include "mainwindow.h" #include "ui_mainwindow.h" #include <windows.h> HANDLE hProcess; int MYBASE; void Attach() { DWORD pid; HWND hWindow = FindWindow(NULL, L"Generic Property Editor Thingy"); GetWindowThreadProcessId(hWindow, &pid); hProcess = OpenProcess(PROCESS_ALL_ACCESS, 0, pid); } MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); } MainWindow::~MainWindow() { delete ui; } void MainWindow::on_pushButton_clicked() { Attach(); WriteProcessMemory(hProcess, (void*)0x4E709C, (void*)(PBYTE)"\xEB", 1, NULL); }
如果你还没有解决这个错误:
mainwindow.cpp(103) : error C3861: 'Attach': identifier not found
函数名称在C / C ++等敏感的情况下…所以重命名你的函数“Attach(…)”
你错过了一个包括windows.h
。
这是由错误决定的
error C2146: syntax error : missing ';' before identifier 'hProcess'
因为hProcess
被声明为
HANDLE hProcess;
那里, hProcess
之前的类型是未定义的。
要解决您的问题,您必须具备以下条件
#include <windows.h>