Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > C/C++
You last visited: Today at 19:35

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



C++ ReadProcessMemory

Discussion on C++ ReadProcessMemory within the C/C++ forum part of the Coders Den category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Jun 2014
Posts: 24
Received Thanks: 0
C++ ReadProcessMemory

Hallo, ich wollte mir mal die Funktion ReadProcessMemory ansehen in C++ da ich vorhabe eine kleine Hook zu machen für einen Launcher.
Ich hab das ganze einmal in C# getestet und will es jetzt gerne in C++ umsetzen allerdings scheitere ich an komischen sachen.

Erstmal der Code:
Code:
void MemoryFunc(HWND hwND)
{
	HWND hWnd;
	HANDLE hproc;
	DWORD procid;
	DWORD rw = 0;

	unsigned adress = 0x1012F270;
	byte buffer = 0;

	hWnd = hwND;
	if (!hWnd)
	{

		cout << "cant find window" << endl;
	}


	GetWindowThreadProcessId(hWnd, &procid);

	hproc = OpenProcess(PROCESS_ALL_ACCESS, FALSE, procid);

	if (ReadProcessMemory(hproc, (LPCVOID)adress, &buffer,
		sizeof(buffer), &rw))
	{
		cout << "Lesen erfolgreich\n";
		cout << buffer << endl;
	}
	buffer++;

	CloseHandle(hproc);
	
}
Jetzt zu meinem Problem undzwar muss ich per ShellExecute ein Spiel starten und dort dann ein Byte in der Memory verändern hat ja soweit mit C# nun alles geklappt nun seht ihr ja den Code und mein Problem ist bei C++ das hwnd , ich kann das nicht mit FindWindow finden, da es bei jedem user abweicht.
Nun meine genau Frage, wie kriege ich die hwnd raus ohne den Window?
Gibts da ne möglichkeit wie bei CSharp mit dem Prozess-Name?

PS: Ich bin echt kein C++ coder ich benutze es nur wenn es hart auf hart kommt, also postet bitte nicht nur Code ne erklärung oder Verlinkung zu etwas wäre cool!
|->|<-| is offline  
Old 09/18/2014, 00:59   #2

 
snow's Avatar
 
elite*gold: 724
Join Date: Mar 2011
Posts: 10,479
Received Thanks: 3,318
Mit solltest du an die PID des erstellten Prozesses kommen.
Ansonsten kannst du auch mit einen Snapshot deiner Prozesse erstellen und mit durch die Prozesse iterieren, bis du deinen Prozess gefunden hast.
snow is offline  
Thanks
1 User
Old 09/18/2014, 01:07   #3
 
elite*gold: 0
Join Date: Jun 2014
Posts: 24
Received Thanks: 0
CreateProcess kann ich nicht benutzen da funktionieren meien Arguments nicht, nur mit ShellExecute klappts, der Offiziele launcher benutzt das auch so.

Edit:
Das wäre der Snapshot oder?
Code:
PROCESSENTRY32 entry; 
        entry.dwSize = sizeof(PROCESSENTRY32); 
  
        HANDLE snapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, NULL); 
  
        if (Process32First(snapshot, &entry) == TRUE) 
        { 
            while (Process32Next(snapshot, &entry) == TRUE) 
            { 
                if (stricmp(entry.szExeFile, "chrome.exe") == 0) 
                {   
                    HANDLE hProcess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, entry.th32ProcessID); 
  
                    SendMessage(hProcess, WM_DESTROY, NULL, NULL); 
                    
  
                    CloseHandle(hProcess); 
                } 
            } 
        } 
  
        CloseHandle(snapshot);
|->|<-| is offline  
Old 09/18/2014, 10:30   #4


 
MrSm!th's Avatar
 
elite*gold: 7110
Join Date: Jun 2009
Posts: 28,908
Received Thanks: 25,409
Übrigens kannst du mit FindWindow auch nach der Window Class suchen, die sich meistens nicht ändert. Die Window Class liest du mit Programmen wie Spy++ aus.
MrSm!th is offline  
Thanks
1 User
Old 09/18/2014, 16:42   #5
 
Terrat's Avatar
 
elite*gold: 130
Join Date: Apr 2012
Posts: 1,173
Received Thanks: 670
Multiplecharset:
HWND HWND_FW=FindWindow( ->Class Name , ->Window name);

Msdn Link:
Terrat is offline  
Reply


Similar Threads Similar Threads
C# ReadProcessMemory ban ?
07/26/2014 - League of Legends - 1 Replies
Hi guys, Just wondering, can i get banned for reading process memory using ReadProcessMemory in C# ?
[C++ DLL] ReadProcessMemory
03/15/2013 - C/C++ - 8 Replies
OK I HAVE SOLVED, THANK TO ALL :D
[HELP] ReadProcessMemory don't work 32 bit.
02/23/2013 - C/C++ - 3 Replies
#Out!
ReadProcessMemory Lib "kernel32" Alias "ReadProcessMemory" Problem
03/06/2012 - .NET Languages - 9 Replies
Deleted
ReadProcessMemory
04/29/2011 - General Coding - 2 Replies
Habe ein gutes beispiel für pointer und offsets um internet gefunden doch leider klappt es nur bei dem programm was auch im video war ich wollte es jetzt mal bei 4story ausprobieren nur leider geht es nicht ( private server ) hier mal das programm #include <iostream> #include <windows.h> using namespace std; //--------------------------------- //Offsets



All times are GMT +1. The time now is 19:36.


Powered by vBulletin®
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2026 elitepvpers All Rights Reserved.