|
You last visited: Today at 00:03
Advertisement
WriteProcessMemory
Discussion on WriteProcessMemory within the C/C++ forum part of the Coders Den category.
07/27/2013, 06:51
|
#1
|
elite*gold: 0
Join Date: Aug 2011
Posts: 1,190
Received Thanks: 549
|
WriteProcessMemory
Hey, also ich versuche schon seit paar Stunden den Wert von einem Base Pointer eines anderen Prozesses via writeProcessMemory zu ändern, aber aus irgendein Grund funktioniert dies nicht.
Code:
PHP Code:
GetWindowThreadProcessId(hWnd, &prog_id); HANDLE hprog = OpenProcess(PROCESS_ALL_ACCESS, false, prog_id);
float valueY; ReadProcessMemory(hprog, (LPVOID)(PointerY), &PointedY, 4, NULL); PointedY = PointedY+OFFY; ReadProcessMemory(hprog, (LPVOID)(PointedY), &valueY, 4, NULL);
UINT_PTR ptr = PointedY;
int value = 0; SIZE_T numWritten = 0;
if (!WriteProcessMemory(hprog, reinterpret_cast<LPVOID>(ptr), reinterpret_cast<LPCVOID>(value), sizeof(value), &numWritten)) { MessageBoxA(0, "Fail", "Fail", MB_OK); } else { MessageBoxA(0, "Changed", "Changed", MB_OK); }
Hoffe jemand weiß Rat, danke.
|
|
|
07/27/2013, 07:46
|
#2
|
elite*gold: 0
Join Date: Oct 2008
Posts: 1,637
Received Thanks: 1,119
|
Gibt ReadProcessMemory valide Werte zurück?
|
|
|
07/27/2013, 08:36
|
#3
|
elite*gold: 0
Join Date: Aug 2011
Posts: 1,190
Received Thanks: 549
|
Jop, ReadProcessMemory kann den Wert korrekt wiedergeben.
e/ Jetzt gehts, Code umgebaut und jetzt funzt^^.
PHP Code:
GetWindowThreadProcessId(hWnd, &prog_id); HANDLE hprog = OpenProcess(PROCESS_ALL_ACCESS, false, prog_id);
float valueY; ReadProcessMemory(hprog, (LPVOID)(PointerY), &PointedY, 4, NULL); PointedY = PointedY+OFFY; ReadProcessMemory(hprog, (LPVOID)(PointedY), &valueY, 4, NULL);
float newdataY = 40 int newdataX = 50;
DWORD newdatasize = sizeof(newdataY);
if(WriteProcessMemory(hprog, (LPVOID)PointedY, &newdataY, newdatasize, NULL)){
MessageBoxA(NULL, "WriteProcessMemory worked.", "Success", MB_OK + MB_ICONINFORMATION);
} else {
MessageBoxA(NULL, "Error cannot WriteProcessMemory!", "Error", MB_OK + MB_ICONERROR);
}
|
|
|
07/27/2013, 18:49
|
#4
|
elite*gold: 5
Join Date: Sep 2006
Posts: 385
Received Thanks: 218
|
Dir fehlen die Rechte um den Speicher fremder Prozesse zu bearbeiten.
Schau dir mal den Teil unter "Remarks" an:
|
|
|
07/27/2013, 21:52
|
#5
|
elite*gold: 0
Join Date: Aug 2011
Posts: 1,190
Received Thanks: 549
|
Mit dem Code über deinem Post gehts ja jetzt^^.
|
|
|
08/06/2013, 19:43
|
#6
|
elite*gold: 0
Join Date: Jul 2013
Posts: 5
Received Thanks: 2
|
maybe there is a protection for writeprocessmemory try to inject dll and use memcpy and and give write acces with virtualprotect
|
|
|
|
Similar Threads
|
WriteProcessmemory?
09/13/2012 - C/C++ - 3 Replies
Mal ne frage.
Kann es sein dass Cheat Engine etwas besonderes macht um werte zu ändern?
Habe einen wert der überprüft wird.
Wenn ich ihn über c++ oder autoit change wirds bemerkt.
Wenn ich den wert mit cheat engine ändere wirds nicht bemerkt.
Bin grad bissle verwundert.
Hab Processopen alle rechte gegeben.
|
WriteProcessMemory
07/11/2012 - C/C++ - 4 Replies
HeyHo,
Ich wollte ein Autoit Script in C++ umwandeln doch leider klappt das nicht so
wie ich will ...
Autoit Code ::
$Adresse = 0x00477786
$Prozess = _memoryopen(ProcessExists("NostaleX.dat" ))
|
C# WriteProcessMemory
02/29/2012 - .NET Languages - 3 Replies
Hey Leute hab nen Problem mit den schreiben von werten in den speicher ...
hier ma grob der code der damit zusammen hängt
//die eingebundene dll
static extern bool WriteProcessMemory(IntPtr hProcess, IntPtr lpBaseAddress,
byte lpBuffer, UIntPtr nSize, ref uint lpNumberOfBytesWritten);
|
ReadProcessMemory & WriteProcessMemory blocken
12/10/2011 - C/C++ - 12 Replies
Hey, wollte fragen, wie man erkennt, wann ein externes Programm per Read- und WriteProcessMemory auf den RAM-Abschnitt von meinem Programm zugreift.
Möchte das verhindern, ist das ohne einen Treiber zu schreiben, möglich?
|
help on Writeprocessmemory
10/07/2009 - General Coding - 8 Replies
#include <Windows.h>
#include <iostream>
using namespace std;
#define EngineUpgrade_Addr 0x2F7EDDC8
#define EngineUpgrade_Value 1000
const SIZE_T EngineUpgrade_Size = sizeof(EngineUpgrade_Value);
SIZE_T EngineUpgrade_Sent = 0;
|
All times are GMT +1. The time now is 00:03.
|
|