Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > C/C++
You last visited: Today at 14:32

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

Advertisement



Pointer Verständnisfrage

Discussion on Pointer Verständnisfrage within the C/C++ forum part of the Coders Den category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Mar 2012
Posts: 26
Received Thanks: 3
Question Pointer Verständnisfrage

Hallo ich habe eine Frage zu Pointern.
Wenn ein Spiel mit new auf dem Heap Speicher für eine Struktur anfordert, die Informationen über den Spieler enthält, dann liegt der Pointer auf diese Struktur wahrscheinlich auf dem Stack.
Aber die Adresse des Stacks ändert sich bei PC-Neustart (bei ASLR aktiv).
Wie finde ich also den Pointer, der auf die Struktur auf dem Heap zeigt?
ehauser is offline  
Old 08/29/2013, 17:14   #2

 
Nanoxx™'s Avatar
 
elite*gold: 15
Join Date: Feb 2013
Posts: 2,880
Received Thanks: 465


Deine Idee: Erstmal zu Epvp
Nanoxx™ is offline  
Old 08/29/2013, 21:30   #3
 
elite*gold: 0
Join Date: Mar 2012
Posts: 26
Received Thanks: 3
Ich hab gegoogelt aber nur Tutorials gefunden WIE man Pointer findet, aber nicht WARUM das funktioniert.
ehauser is offline  
Old 08/30/2013, 02:18   #4
 
elite*gold: 0
Join Date: May 2013
Posts: 21
Received Thanks: 3
Quote:
Originally Posted by GERMANY132816 View Post


Deine Idee: Erstmal zu Epvp
wtf, das ist doch das Coding forum, genau hier sollte man solche fragen auch stellen können.
BanishTheShadows is offline  
Old 08/30/2013, 02:55   #5
 
Padmak's Avatar
 
elite*gold: 58
Join Date: Jun 2008
Posts: 2,311
Received Thanks: 8,420
Du kannst einen BP on Access auf die Struct legen und dann schauen, von wo aus die Structs ausgelesen/beschrieben werden

Dann kannst du von dort aus weitersehen

Padmak
Padmak is offline  
Old 08/31/2013, 12:39   #6


 
MrSm!th's Avatar
 
elite*gold: 7110
Join Date: Jun 2009
Posts: 28,905
Received Thanks: 25,407
Ihr verfehlt die Frage. Er will wissen, wie er einen unveränderlichen Pointerpfad auf die Struktur bekommt, wenn eine Pointervariable nunmal nicht global ist, sondern innerhalb einer Funktion auf dem Stack liegt.

Dazu sei Folgendes gesagt:
Ein Objekt macht nur Sinn, wenn darauf auch irgendwer zeigt, also wird es wohl kaum so sein, dass die Funktion verlassen wird, das Objekt bleibt auf dem Heap und der Pointer verlässt seinen Gültigkeitsbereich.
Sicherlich wird der Pointer in dem Fall irgendwie nach außen gereicht. Ein Hook der Funktion würde Klarheit schaffen.
Sollte der Pointer tatsächlich nur innerhalb der Funktion gültig sein, weil das Objekt beispielsweise temporär ist, dann wirst du ohnehin nicht um einen Hook herum kommen, damit du nicht auf den Pointer zugreifst, wenn das Objekt gar nicht existiert und es auch keinen Sinn macht.

Sollte es sich um eine Funktion mit längerer Ausführung handeln (Extrembeispiel: Main), dann ist der Pointer auch entsprechend lange gültig, sofern er nicht zwischendurch aktiv zerstört wird. In dem Fall wäre es auch wohl auch möglich, auf den Pointer einen sinnvollen Basepointer zu bekommen. Ich bin mir gerade nicht ganz sicher, aber gibt es nicht eine API / einen Eintrag im PEB/TEB, der auf den Anfang des Stacks zeigt? Die Position innerhalb des Stacks sollte ja konstant sein. Damit hättest du dann deinen Basepointer.

So oder so, ein Hook bleibt das Mittel der Wahl. Da wäre btw auch das Register fs eine Möglichkeit.
MrSm!th is offline  
Thanks
1 User
Reply


Similar Threads Similar Threads
Verständnisfrage
01/27/2013 - Metin2 Private Server - 5 Replies
Hab nur ne Frage... Also wenn ich was in locale ändere, dann ist das nur Clientside, und hat null Auswirkungen aufs Spiel ? Aber wenn ich jetzt was in den PC Datein ändere, könnte es Auswirkungen haben, wie z.b. ExternalForce oder ?
Verständnisfrage
12/01/2012 - Metin2 Private Server - 11 Replies
Moin Com Ich hab mal ne Frage... Also ich bin hier grad schön am Client modden und da ist mir eine Frage aufgekommen. Was hat die Index Datei für einen Sinn ? Ich mein Situation: hab in den Client einen dmg-mod reingehaun(pack) und dann die Index ersetzt... Gut nun war ich ingame unsichtbar... Hmmm also die Ursprüngliche Client Index reingesetz... Nun wieder sichtbar aber Dmg-mod geht nicht... Naja gut dann AntiFlyDmg in die Ursprüngliche Index mit eingeführt, doch geht immer noch...
[Verständnisfrage]Decrypten von Gamefiles
04/21/2010 - General Coding - 5 Replies
Hiho E*Pvp Ich beschäftige mich seit geraumer Zeit im Moddingbereich (ausserhalb von elitepvpers) und habe schon öfters sogenannte File-Extractors benutzt, welche aus gecrypteten dateien die originale wiederherstellen. Ich habe jetzt schon ein wenig erfahrung in C++, und schon meine eigenen Versuche mit einfacher Text En bzw. Decryptung gestartet. Was mir eben spontan einfiel, war dass ich jeweils einen Char in einen Int caste, den modifiziere und wieder in einen Char caste, das dann mit...
Frage: Wie findet man zB UG Pointer?Speed pointer?
03/30/2010 - Kal Online - 2 Replies
kann mir einer sagen wie man UG/Speed pointer finden kann usw^^´ß#



All times are GMT +1. The time now is 14:33.


Powered by vBulletin®
Copyright ©2000 - 2025, 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 ©2025 elitepvpers All Rights Reserved.