![]() |
grafik aus Speicheradresse erkennen
Hallo,
Ich hab vor ein neues Projekt zu starten doch vorher habe ich ein paar Fragen bei dennen ich nicht sich bin ob die zu realisieren sind. Ist es möglich wenn in einem Spiel eine bestimme grafik angezeigt wird, dass mein Programm daraufhin eine Handlung macht egal welche ? Also z.B wenn bei einem Spiel ein headshot verteilt wird erscheint eine Grafik neben den Namen.. Ich möchte das mein programm das erkennt und dementsprechend handelt. > Messagebox oder Sound.. Ich dachte an hooks aber da weiß ich noch nicht wo ich anfagen sollte.. Kann man vl anhand der Speicheradresse erkennen ob die grafik gerade angezeigt wird? Bin für jeden Tipp/Hilfe dankbar grüße fr4gz |
Re: grafik aus Speicheradresse erkennen
Ich weiß ja nicht um welches Spiel es sich handelt, aber bei den etwas neueren Ego-Shootern wirst du mit Zugriffen auf den Speicher kaum Erfolg haben, da die genutzten Anti-Cheat-Programme (auch wenn in deinem Fall kein Cheat geschaffen werden soll) solche Zugriffe unterbinden.
Falls das trotz der von mir oben erläuterten Probleme (ich meine du greifst ja nur lesend zu) funktionieren würde, Wäre es nicht einfacher nach Werten im Speicher zu suchen, die sich verändern bei einem, wie du sagst, "headshot"? [vllt. gibt es irgendwelche Scores die sich erhöhen] Ansonsten wird so etwas doch meist über erlaubte Spiel-Modifikationen durchgeführt (bei cod2 wahrscheinlich ziemlich einfach, sonst gäbe es ja nicht so viele). |
Re: grafik aus Speicheradresse erkennen
Im RAM wirst du das angezeigte Bild - gerade bei Spielen mit DirectX/OpenGL - ohnehin nicht finden können, sondern maximal im Speicher der Grafikkarte. Es gibt imho keine Möglichkeit an diesen im Usermode heranzukommen, wenn überhaupt. Deine einzige Chance bildorientiert zu arbeiten ist es, wenn du ähnlich wie z.B.
![]() Falls du einen Weg findest, lass uns bitte daran Teil haben! |
Re: grafik aus Speicheradresse erkennen
Es ist theoretisch möglich, da intern jedes Spiel eine Schleife hat in der alles gezeichnet wird. Also wird auch wohl auch eine Funkion ShowHeadshot(Spieler1, 2: String); oder dergleichen aufgerufen (für jeden Frame zum zeichen), die könnte man hook -> wird aber wohl von den beisten ACs erkannd und kannst gebannt werden.
Die Strukturen (Spielernamen, Kills als integer) werden aber auch ncoh im Speicher (irgendwo) liegen. Die kann man extern mittels ReadProcessMemory auslesen und auswerten. Dafür braucht man sicherlich ein bisschen Debugger/Assembler Kenntnisse bzw. man sollte mit sich mit TSearch o.a. Programmen auskennen. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:14 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz