|
You last visited: Today at 10:13
Advertisement
[C#]wert einer adresse ausgeben
Discussion on [C#]wert einer adresse ausgeben within the .NET Languages forum part of the Coders Den category.
06/14/2009, 17:25
|
#1
|
elite*gold: 20
Join Date: Mar 2008
Posts: 1,455
Received Thanks: 140
|
[C#]wert einer adresse ausgeben
wie der titel schon sagt versuche ich den wert einer adresse auszugeben .
mein vorhaben :
per readprocessmemory den wert auslesen und dann in einer textbox anzeigen lassen . so weit so gut.
wenn ich es dann in der praxis probiere kommt sowas raus : 3021221321
hab ich was falsch gemacht? vllt sind das ascii zeichen die ich konvertieren muss
ich frage euch
|
|
|
06/14/2009, 17:28
|
#2
|
elite*gold: 0
Join Date: May 2008
Posts: 489
Received Thanks: 210
|
Wir können leider auch nicht hellsehen. Den Code musst du uns schon zeigen.
|
|
|
06/14/2009, 17:31
|
#3
|
elite*gold: 20
Join Date: Mar 2008
Posts: 1,455
Received Thanks: 140
|
Quote:
byte[] bytes = new byte[4];
byte[] bytes2 = new byte[4];
int Pos_x = 0x2090474;
int Pos_y = 0x209047C;
uint size = sizeof(int);
uint rw = 0;
bool read;
bool read2;
read = ReadProcessMemory(rhdl, (IntPtr)Pos_x, bytes, (UIntPtr)size, ref rw);
read2 = ReadProcessMemory(rhdl, (IntPtr)Pos_y, bytes2, (UIntPtr)size, ref rw);
|
die werte die ich auslese möchte ich ja in der textbox ausgeben
|
|
|
06/14/2009, 17:39
|
#4
|
elite*gold: 115
Join Date: Oct 2007
Posts: 9,390
Received Thanks: 12,345
|
Ist read bzw. read2 true oder false?
Du willst anscheinend irgendwelche Koordinaten auslesen. Verändern sich bytes bzw. bytes2 dann auch wenn du dich im Spiel bewegst?
Außerdem scheint mir 3021221321 wie eine ganz normale 4-Byte-Zahl. ;o
|
|
|
06/14/2009, 17:41
|
#5
|
elite*gold: 0
Join Date: May 2008
Posts: 489
Received Thanks: 210
|
Quote:
Originally Posted by Gianotti
die werte die ich auslese möchte ich ja in der textbox ausgeben 
|
Bist du sicher, dass der Prozess richtig und mit richtigen Rechte geöffnet ist?
Außerdem fallen mir da einige Dinge auf:
Ich bin nicht vertraut mit C#, aber was soll das mit dem byte Array? Ich schätze mal deine Position ist ein float oder int, warum speicherst du es in einem byte Array?
Warum machst du deine size als unsigned int aber deine Adresse nicht?
Was ist "ref"? So etwas wie der Adressoperator in C#?
ReadProcessMemory returnt BOOL und nicht bool. Ich weiß nicht ob es in C# auch so ist, aber in C++ ist bool eine 1 Byte elementarer Datentyp, während BOOL als integer deklariert ist.
Das mit dem byte Array ist Unfug. Der Rest sind nur Hinweise. Poste mal den ganzen Code.
|
|
|
06/14/2009, 17:42
|
#6
|
elite*gold: 0
Join Date: Dec 2007
Posts: 23
Received Thanks: 3
|
ein tag noch
...
|
|
|
06/14/2009, 17:58
|
#7
|
elite*gold: 20
Join Date: Mar 2008
Posts: 1,455
Received Thanks: 140
|
Quote:
Originally Posted by schlurmann
Bist du sicher, dass der Prozess richtig und mit richtigen Rechte geöffnet ist?
Außerdem fallen mir da einige Dinge auf:
Ich bin nicht vertraut mit C#, aber was soll das mit dem byte Array? Ich schätze mal deine Position ist ein float oder int, warum speicherst du es in einem byte Array?
Warum machst du deine size als unsigned int aber deine Adresse nicht?
Was ist "ref"? So etwas wie der Adressoperator in C#?
ReadProcessMemory returnt BOOL und nicht bool. Ich weiß nicht ob es in C# auch so ist, aber in C++ ist bool eine 1 Byte elementarer Datentyp, während BOOL als integer deklariert ist.
,
Das mit dem byte Array ist Unfug. Der Rest sind nur Hinweise. Poste mal den ganzen Code.
|
1. ich besitze alle rechte die ich benötige da es keine errors gibt.
2. in dem byte array wird nichts gespeichert
3.jup mit dem ref hast du recht
4.ob bool oder BOOL c# ist da nicht so kritisch wie c++ 
5.ich habe da eine idee...
|
|
|
06/14/2009, 18:07
|
#8
|
elite*gold: 4
Join Date: Aug 2008
Posts: 6,783
Received Thanks: 4,992
|
int var1 = BitConverter.ToInt32(bytes, 0);
bzw
int var2 = BitConverter.ToInt32(bytes2, 0); könnte dir evtl helfen.
|
|
|
06/14/2009, 18:08
|
#9
|
elite*gold: 115
Join Date: Oct 2007
Posts: 9,390
Received Thanks: 12,345
|
Quote:
Originally Posted by Gianotti
2. in dem byte array wird nichts gespeichert.
|
Quote:
|
Originally Posted by MSDN
BOOL WINAPI ReadProcessMemory(
__in HANDLE hProcess,
__in LPCVOID lpBaseAddress,
__out LPVOID lpBuffer,
__in SIZE_T nSize,
__out SIZE_T *lpNumberOfBytesRead
);
|
Ich meine schon.
|
|
|
06/14/2009, 18:11
|
#10
|
elite*gold: 4
Join Date: Aug 2008
Posts: 6,783
Received Thanks: 4,992
|
Mjo mjo is schon richtig ;O in lpBuffer werden die ausgelesenen Bytes gespeichert.
|
|
|
06/14/2009, 18:13
|
#11
|
elite*gold: 20
Join Date: Mar 2008
Posts: 1,455
Received Thanks: 140
|
Quote:
Originally Posted by Cholik
int var1 = BitConverter.ToInt32(bytes, 0);
bzw
int var2 = BitConverter.ToInt32(bytes2, 0); könnte dir evtl helfen.
|
Quote:
Originally Posted by Disconnect
Ich meine schon.
|
wow danke es geht jetzt
und @disconnect : wusste ich nicht. dachte das wäre für die maximale größe des wertes der adresse
|
|
|
06/14/2009, 18:57
|
#12
|
elite*gold: 0
Join Date: May 2008
Posts: 489
Received Thanks: 210
|
Anstatt da dumm umzuwandeln nimm einfach ein int. o.O
|
|
|
06/14/2009, 19:10
|
#13
|
elite*gold: 4
Join Date: Aug 2008
Posts: 6,783
Received Thanks: 4,992
|
"dumm umwandeln" musst du so oder so
naja und n ExceptionHandler ist beim BitConverter ja auch noch bei :P
|
|
|
06/14/2009, 19:28
|
#14
|
elite*gold: 115
Join Date: Oct 2007
Posts: 9,390
Received Thanks: 12,345
|
Ich glaube nicht.
Denn wenn du beispielsweise folgendes schreibst:
dann steht im Speicher (vorrausgesetzt natürlich int entspricht 32 Bit):
|
|
|
06/14/2009, 19:30
|
#15
|
elite*gold: 20
Join Date: Mar 2008
Posts: 1,455
Received Thanks: 140
|
Quote:
Originally Posted by Disconnect
Ich glaube nicht.
Denn wenn du beispielsweise folgendes schreibst:
dann steht im Speicher (vorrausgesetzt natürlich int entspricht 32 Bit):
|
ehm er schreibt es so wie ich es wollte . o.0
|
|
|
 |
|
Similar Threads
|
[C++] Minimum und Maximum Adresse einer App finden?
05/08/2010 - S4 League - 6 Replies
Hallo epvpers!
Ich wollte mir seit geraumer Zeit eine eigene UCE schreiben in C++. Ich weis wo die im RAM erste Adresse für sämtliche Applikationen zu finden ist und wo die letzte. Aber wenn ich nur für in diesem Falle S4 die Adressen finden will dauert das eine Halbe Ewigkeit... Klar, mit etwas Zeit geht das schon klar, aber die paar Millionen Adressen kann man sich doch sicherlich sparen, oder nicht?
Ich kenne mich mit dem Memory-Krams noch nicht so gut aus, vielleicht gibt's da ja einen...
|
Wert einer option herausfinden?
02/05/2009 - Metin2 - 1 Replies
Ich spreche insbesonderem von funtionen die entweder an oder aus sind
Nehmen wir mal die minimap
map hack gibt es ja mich würde allerdings interresieren wie man zum beispiel diesen Map hack realisiert.
da ich ein blackout habe und mein hirn im moment furzt bitte ich um ein kleines tutorial wie man eben diesen Maphack macht
wenn ich diesen Maphack verstehe (so glaube ich zumindest) habe ich bessere chancen auch neue Hacks zu testen und zu finden.
|
All times are GMT +1. The time now is 10:14.
|
|