windows - C ++ Qt WriteProcessMemory

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg forsøger at WriteProcessMemory bruger Qt med QtCreator. Når jeg trykker på knappen, skriver den ikke. Her er koden jeg bruger, hvis nogen kunne hjælpe.


#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);

}

Bedste reference


Hvis du ikke har løst denne fejl:


mainwindow.cpp(103) : error C3861: 'Attach': identifier not found


Funktionsnavne er sager følsomme i C/C + + osv. .. Så omdøb din funktion til 'Vedhæft (...)'

Andre referencer 1


Du mangler et indlæg til windows.h.


Dette blev bestemt af fejlen


error C2146: syntax error : missing ';' before identifier 'hProcess'


som hProcess erklæres som


HANDLE hProcess;


Der for, er typen før hProcess udefineret.


For at løse dit problem skal du have følgende


#include <windows.h>