Witam!
Jak w C++ zmieniać wartości innego procesu?
Jakieś linki, tutoriale, dokumentacja.
Z góry dziękuję, userfail
Witam!
Jak w C++ zmieniać wartości innego procesu?
Jakieś linki, tutoriale, dokumentacja.
Z góry dziękuję, userfail
A czy mógłbyś mi pomóc w zrobieniu jakiegoś przykładu?
A jaki w tym problem? Pobierasz uchwyt procesu i wczytujesz/zapisujesz w kego pamięci co chcesz.
Jeśli nie znasz adresu danej zmiennej to musisz go poznać(np. zapisując go gdzieś na boku, pobierając z informacji debuggera). Nie widzę w tym żadnej sztuki.
TUTAJ masz wygooglany przykład(wydaje się być dobry, choć to chyba jest jakiś hack do Mapple Story).
#include
#include
#include Winbase.h
#include Windows.h
#include "FILENAME"
int main()
{
HWND hWnd = FindWindow(0, "nazwa_okienka");
{
MessageBox(0, "Error cannot find window!", "Error!", MB_OK + MB_ICONERROR);
}
else
{
DWORD proc_id;
GetWindowThreadProcessId(hWnd, &proc_id);
HANDLE hProcess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, proc_id);
if(!hProcess)
{
MessageBox(NULL, "Cannot open process!", "Error!", MB_OK + MB_ICONERROR);
}
else
{
BYTE newdata[]={6};
DWORD newdatasize = sizeof(newdata);
if(WriteProcessMemory(hProcess, (LPVOID)0x5C6600, &newdata, newdatasize, NULL))
{
MessageBox(NULL, "WriteProcessMemory is a success!", "Success!", MB_OK + MB_ICONINFORMATION);
}
else
{
MessageBox(NULL, "Error cannot WriteProcessMemory!", "Error!", MB_OK + MB_ICONERROR);
}
CloseHandle(hProcess);
}
}
@up: Ekhm… Z tego co widzę, podstaw C(++) nie znasz. Skąd Ci się wzięło “#include “FILENAME””? Skąd “#include Winbase.h”(a gdzie < i >?)? Dlaczego “windows.h” nie jest w nawiasach ostrych? Po co dołączasz conio.h? Gdzie pierwszy if? Gdzie klamra zamykająca “main”?
A Hello World umiesz napisać?