|
You last visited: Today at 10:16
Advertisement
[Question] ReadProcessMemory With Char Text !?
Discussion on [Question] ReadProcessMemory With Char Text !? within the C/C++ forum part of the Coders Den category.
02/20/2012, 16:59
|
#1
|
elite*gold: 15
Join Date: Nov 2011
Posts: 556
Received Thanks: 1,002
|
[Question] ReadProcessMemory With Char Text !?
CHAR chVersion[11];
DWORD dwVersion = 0x3A1234;
ReadProcessMemory(hProcessHandler,(LPCVOID)dwVersi on,&chVersion,4,NULL);
if ( chVersion == " 1.201301202" )
{
VersionInfoLabel->Text="< OK >";
}
else
{
VersionInfoLabel->Text="< PATCHED >";
}
Was ist falsch?
|
|
|
02/20/2012, 17:28
|
#2
|
elite*gold: 50
Join Date: Mar 2010
Posts: 1,373
Received Thanks: 521
|
Der vierte Parameter gibt die Menge an Bytes an, die gelsen werden sollen. In deinem Fall hast du vier angegeben. Du vergleichst aber mit einem einem 12 stelligen String, also kann das garnicht funktionieren.
Probier es einmal so, da dein String 12 Stellen hat:
Code:
ReadProcessMemory(hProcessHandler,(LPCVOID)dwVersi on,&chVersion,sizeof(CHAR)*12,NULL)
Außerdem musst du dein Puffer-Array auf 12 vergrößern, da der String ansonsten nicht null terminiert ist.
|
|
|
02/20/2012, 18:22
|
#3
|
elite*gold: 115
Join Date: Oct 2007
Posts: 9,390
Received Thanks: 12,345
|
Außerdem solltest du strcmp benutzen.
Jetzt ist es aber genug mit dem Spoonfeeding. ;O
|
|
|
02/20/2012, 19:19
|
#4
|
elite*gold: 0
Join Date: May 2009
Posts: 827
Received Thanks: 471
|
Code:
#include <stdio.h>
#include <windows.h>
int main(int argc, char** argv)
{
HANDLE handle = GetCurrentProcess();
char cstrVersion[] = "1.201301202";
const char* ulAddress = cstrVersion;
DWORD dwRead = 0;
size_t length = 128;
char buffer[length];
ZeroMemory(buffer, length);
if(ReadProcessMemory(handle, ulAddress, buffer, length, &dwRead) == TRUE)
{
buffer[dwRead] = 0;
if(strcmp(buffer, "1.201301202") == 0)
{
printf("%s", "< OK >");
}else
{
printf("%s", "< PATCHED >");
}
}
return 0;
}
EDIT: Letzter Parameter von ReadprocessMemory is gemäß MSDN ein size_t Zeiger.. Aber scheinbar sind meine Header veraltet..
|
|
|
02/21/2012, 17:33
|
#5
|
elite*gold: 7110
Join Date: Jun 2009
Posts: 28,902
Received Thanks: 25,407
|
C++ Lernen + MSDN Lesen = win
#closed
|
|
|
 |
Similar Threads
|
how to use ReadProcessMemory to get char name with vb????
06/18/2011 - Perfect World - 2 Replies
:handsdown::handsdown::handsdown::handsdown:
I've got an offset but do not know how to use it to read type string,i know just to read type integer.
this my function
Public Shared Sub PointerRead(ByVal Offset As Integer(), ByRef Buffer As Integer)
Try
Dim b As Integer = Nothing
Dim t As Integer = _PerfectWorldBaseAddress
|
ReadProcessMemory Text/String auslesen
04/25/2011 - General Coding - 16 Replies
Guten Morgen,
ich hab zurzeit ein kleines Problem wo in Google nicht viel drüber steht.
Undzwar ich will von einem Pointer den Text auslesen allerdings gelingt mir das nicht so wirklich, entweder ich schaff nur den ersten Buchstaben auszulesen ( liegt daran das ich die länge angeben muss,aber klappt nicht so wie ich das will) oder dort kommt nur komisches Zeug raus.
DWORD value;
ReadProcessMemory(hProcess,(LPVOID)Adresse,&v alue,sizeof(value),0);...
|
[C++] ReadProcessMemory Text?
09/12/2010 - C/C++ - 5 Replies
die frage kommt den pros hier vllt etwas dumm vor, aber
ich befasse mich ja erst seit 2 wochen mit c++:
ich habe folgenden code:
ReadProcessMemory(handle,(LPVOID)address,&text ,sizeof(long),&numBytesRead);
cout << hex << text << "\n";
cout << char(text) << "\n";
ich will in einem spiel einen text auslesen.
der erste wert in der konsole entspricht dem 4 bytes wert in CE.
|
[Hilfe] Auto IT Text char[x]
07/28/2010 - AutoIt - 32 Replies
Moin Leute.
Ich grübel nun schon länger über meinen Auto IT Trainer.
Nur dieser soll anstatt float values eine Text value verändern >.>
Habe halt ein paar probs damit wäre nett wenn mal jemand kurz drüber schauen würde :)
Netten Gruß
|
[Question] Text on map + new Furniture (5165)
02/09/2010 - CO2 Private Server - 4 Replies
So, how/what do I edit the client so that I can write text on the floor for example in Twin City, in the middle I want it to say on the floor, printed, "Conquer Emulator".
How can I do this, I just thought of this.
#UPDATE:
Oh also, I've been thinking of making new objects. For example in the houses, you can put your own furniture, how can I add some? Which program can/should I use?
Note: i know this is client sided, and I don't know if it makes a difference for which source you...
|
All times are GMT +1. The time now is 10:17.
|
|