Einzelnen Beitrag anzeigen

Benutzerbild von dizzy
dizzy

Registriert seit: 26. Nov 2003
Ort: Lünen
1.932 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: Handle von Komponenten aus einem Spiel ermitteln

  Alt 6. Jun 2007, 23:02
Nur dann via Handles möglich, wenn das Spiel ein ganz einfaches, aus normalen Win-Controls zusammengebautes ist. Sobald es aber mit Java oder OpenGL oder DirectX gebaut ist, sind dort keine Win-Controls verbaut, sondern Eigenkonstruktionen die sich zwar wie die gewohnten Controls verhalten (sollten), jedoch aus Sicht von Windows nicht existieren.
Folglich kannst du Windows auch nicht als Mittler bemühen, da es ahnungslos ist. Die einzige Chance die man dann hat, ist es die Speicheradressen im laufenden Spiel zu ermitteln, an denen die zu ändernden Daten stehen, und diese dann in den fremden Prozess von aussen einzusetzen. Viele aktuelle Spiele erkennen einen solchen Zugriff jedoch als Cheat (egal was du da tust, du greifst ja in die "Privatsphäre" des Spiels ein, das reicht meist schon). Bei älteren Spielen und reinen Offline-Spielen wird man da zwar weniger Gegenwehr erwarten können, jedoch ist die Technik an und für sich schon ziemlich anspruchsvoll, und besonders die Suche nach der gewünschten Adresse gestaltet sich oft schon als nicht soooo einfach, zumal es dazu im Idealfall einen Debugger benötigt. (Die manche neueren Spiele ebenfalls erkennen wenn sie parallel laufen, und sich dann z.B. nicht mehr starten lassen.)
Fabian K.
INSERT INTO HandVonFreundin SELECT * FROM Himmel
  Mit Zitat antworten Zitat