[c++] Edycja Zmiennych Innego Procesu

Witam!

Jak w C++ zmieniać wartości innego procesu?

Jakieś linki, tutoriale, dokumentacja.

Z góry dziękuję, userfail

ReadProcessMemory

WriteProcessMemory

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ć?