Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Theorie zur Zuteilung der Speicheradresse (https://www.delphipraxis.net/35783-theorie-zur-zuteilung-der-speicheradresse.html)

The-Fox 11. Dez 2004 19:32


Theorie zur Zuteilung der Speicheradresse
 
Hallo,

Ich habe diesen Thread schoneinmal im Delphi-Forum verfasst. Dort antwortet aber leider niemand :( Hier ist trotzdem mal der Link zum Crosspost: http://www.delphi-forum.de/topic_The...sse_33571.html

Also hier mal mein anliegen:

Also ich bin immernoch dabei meinen Spieletrainer für die Sims zu schreiben.

Jetzt hatte ich ne Idee: Ich weiss zwar nicht wo sich die SPeicherstelle nach einem Neustart befindet, aber ich könnte es ja so angehen: Ich habe gelsen dass man herausfinden kann wo der Speicherbereich eines Prozesse beginnt. Der Speicher müsste ja eigentlich gleich aufgebaut sein (wegen den assembler-sektoren, die bleiben ja). Also könnte ich theoretisch einfach den "Anfangswert" des Speichers zu dem mir vorher gefundenen Wert hinzuzählen. Könnte das so klappen?

Bevor ihr jetzt fragt: Ich könnte es ja ausprobieren, aber die Materie ist mir einfach zu kompliziert (noch) und tutorials oder ähnliches sind nicht zu finden. wenn ich mir jetzt irgendeinen code herkopieren würden, und es nicht funktionieren würde, könnte ich nicht testen warum, da es ja einfach zuviele Faktoren gibt die schon in der Prozedur falsch sein können...deswegen frage ich mal hier nach.

fiasko 11. Dez 2004 22:48

Re: Theorie zur Zuteilung der Speicheradresse
 
Hallo,

du solltest vielleicht vorher mal etwas über moderne Betriebssysteme lesen, stichwort Paging, Adreßräume :-)

Dein Ansatz ist grundsätzlich (mit Delphi :gruebel:) unmöglich.

Christian Seehase 11. Dez 2004 22:50

Re: Theorie zur Zuteilung der Speicheradresse
 
Moin Thomas,

Zitat:

Zitat von fiasko
Dein Ansatz ist grundsätzlich (mit Delphi :gruebel:) unmöglich.

wieso sollte das mit Delphi nicht möglich sein? :gruebel:

Such' mal hier z.B. nach Hier im Forum suchenReadProcessMemory, dazu müsste es hier ein paar Beiträge geben.

fiasko 11. Dez 2004 22:56

Re: Theorie zur Zuteilung der Speicheradresse
 
Zitat:

Zitat von Christian Seehase
wieso sollte das mit Delphi nicht möglich sein? :gruebel:

:duck:

Ich ging davon aus das es höchstens im Kernel-Mode möglich sei... wie kann man nur so eine Funktion in einem Betriebssystem implementieren... ist ja echt grauenhaft :freak:

Tubos 12. Dez 2004 09:58

Re: Theorie zur Zuteilung der Speicheradresse
 
Zitat:

wie kann man nur so eine Funktion in einem Betriebssystem implementieren... ist ja echt grauenhaft
keine angst, das geht natürlich nur wenn der prozess dessen speicher du auslesen willst das auch erlaubt.

c113plpbr 12. Dez 2004 20:18

Re: Theorie zur Zuteilung der Speicheradresse
 
Ich hab mich mit dem Cheaten von Spielen auch schon beschäftigt, über längere Zeiträume. Nun, bei manchen Spielen fällt auf (wie du schon sagtest), dass sich die Speicheradressen nach jedem Start des Spiels verändert haben, was aus der sicht eines Programmierers eigentlich auch nicht verwunderlich ausschaut, denn der Speicher wird irgendwo angefordert, und schliesslich auch (meist) wieder freigegeben. Das Betriebssystem bestimmt in den meisten fällen dann, wo noch platz ist, um die ein oder andere Variable unterzubringen, und das ist in (sagen wir mal) 99% aller fälle immer ein anderer "ort" ...

... nun sollte das Spiel selbst sich aber dennoch irgendwie auskennen (wäre vielleicht praktisch ;) ), woraus sich folgern lässt, dass das Spiel selbst die adressen dieser Variablen irgendwo abspeichert, und diese adressen gilt es herauszufinden. Natürlich ist es möglich, dass dies dann hinterher über nen paar ecken geht, und du diese prozedur etwas öfter wiederholen musst ;) ...
Es ist keine leichte aufgabe, etwas tricksen, und glück gehört schon dazu, denn ansonsten wirft man relativ schnell alles hin ...

Es ist möglich, und das zeigen nicht zuletzt diverse SpieleTrainer, die (fast) das gleiche ja bereits tun.

Zitat:

Zitat von Tubos
keine angst, das geht natürlich nur wenn der prozess dessen speicher du auslesen willst das auch erlaubt.

Ob dies erlaubt ist bestimmt im normalfall das Betriebssystem, nicht der prozess selber, ansonsten wäre es ja leicht, ein Spiel 'cheatsicher' zu machen.

ciao, Philipp


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:06 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz