![]() |
Spiel blockiert SendKey und andere virtuelle Eingaben
Hi Leute
Ich hab echt ein komisches Problem. Ich hab nen Code geschrieben der einem Spiel gewisse Tasten sendet, ich mach also sozusagen ein Macro. Aber das funktioniert irgendwie nicht. Ich habs mit SendKey, keybd_event und postmessage versucht, aber keines funktioniert. Wenn ich zum Test z.B. Notepad öffne, dann wird das Makro schön ausgeführt, alle Zahlen werden geschrieben. Aber beim Spiel geschieht nichts, es scheint das ganze zu blockieren. Nur frag ich mich, wie ist das möglich. Wie kann ein Spiel das drücken einer Taste blockieren? Kann man das irgendwie umgehen, weil mir scheint das unlogisch :D |
Re: Spiel blockiert SendKey und andere virtuelle Eingaben
Vielleicht ist das ein Anti-Cheater-Schutz? ;-)
|
Re: Spiel blockiert SendKey und andere virtuelle Eingaben
Ja, aber z.B. die Bildschirmtastatur die funktioniert ja auch und das ist ja auch nur ne virtuelle Tastatur oder.
|
Re: Spiel blockiert SendKey und andere virtuelle Eingaben
Sorry, kann Dir nicht helfen. Das mit dem cheaten is mir nur sofort in den Kopf gekommen.
|
Re: Spiel blockiert SendKey und andere virtuelle Eingaben
Mach mal eine Pause zwischen Key Down und Key Up wenn du mit keybd_event sendest.
|
Re: Spiel blockiert SendKey und andere virtuelle Eingaben
Hab mal ne sleep-funktion eingesetzt aber funktioniert auch ned. Versteh ich echt ned. Ist aber nen komischer Cheat-Schutz ^^
Welche Befehle nutzt denn die normale Bildschirmtastatur von Windows? Die kann ja nicht wsa spezielles haben. |
Re: Spiel blockiert SendKey und andere virtuelle Eingaben
Um welches Spiel geht es denn? Vieleicht brauchst du eine speziell auf das Spiel zugeschnittene DLL...
|
Re: Spiel blockiert SendKey und andere virtuelle Eingaben
hast du die tasten auchnoch zusätzlich gemappt? so:
down:
Code:
up:
keybd_event(taste, MapvirtualKey(taste, 0), 0, 0);
Code:
mfg
keybd_event(taste, MapvirtualKey(taste, 0), KEYEVENTF_KEYUP, 0);
|
Re: Spiel blockiert SendKey und andere virtuelle Eingaben
danke, aber funktioniert auch nicht. ist aber egal, ich mach jetzt nen umweg über die bildschirmtastatur ^^ lass ichs halt dort klicken :D
|
Re: Spiel blockiert SendKey und andere virtuelle Eingaben
Also die Bildschirmtastatur machts mit SendInput
Zitat:
|
Re: Spiel blockiert SendKey und andere virtuelle Eingaben
Man kann das ganze auch über DirectInput versuchen. Ich habs mal versucht und es war mir bissele zu hoch. Aber ich kenne ein Programm, kein Plan wie das heißt, wenn ichs weiß mach ichn link hin, der benutzt auf jedenfall den Weg über DirectX. Sollte für viele Spiele funktionieren. Andere haben nen Cheat-Schutz und überprüfen wer den Befehl sendet, wird nur ausgewertet, wenn der Key den richtigen Absender hat... etc...
Gruß Angelo |
Re: Spiel blockiert SendKey und andere virtuelle Eingaben
Das ist mal ein Interessantes Thema, mit welchem ich mich auch schonmal beschäftigen wollte...
Bei vielen Spielen, gerade im MMORPG bereich sind Anti-Cheat Programme am laufen. Diese sind so rabiat, dass sie mal alles mögliche blocken und das ganze System mitziehn... Was gegen Cheats und Bots zu unternehmen ist ja toll, aber wenn dann Systemweit keine Tasten eingaben mehr gehen, ist das mehr als nervig... Die die mir einfallen (X-Trap und Game Guard), scheinen z.b. SetInput komplett zu deaktivieren... Nicht nur fürs Spiel selbst, nein, im ganzen System... Spiel gestartet und schon geht keine Windowstaste mehr, keine virtuelle Windowstastatur... ec. Mich würd mal interessieren wie die das machen und wie man das ev. wieder rückgängig machen kann... Zumindest für SetInput wär das mal was... Ev. hat sich ja mal wer damit beschäftigt und hat dahingehend ein paar Infos/Tips Bye Christian |
Re: Spiel blockiert SendKey und andere virtuelle Eingaben
Also, ich kenne das ganze von den Emulatoren und einigen NCSoft Games. Die haben GameGuard. Aber auch bei den Emulatoren funktioniert mit SendInput nix. Ergo, es geht über DirectX Hooks, so wie in JoyToKey.
![]() Ich hab das Programm mal auseinander genommen, es funktioniert definitiv über DirectX, ob Hooks weiß ich nicht mehr genau, da war ich noch 16, aber ich wollte mal sowas ähnliches schreiben und bin gescheitert. Zu anderen Varianten, die Sperren die Windows-Taste einfach. Könnte man realisieren indem man den Tastendruck über Hooks abfängt und blockt, was bei Vista glaub ich mal ein Problem darstellen würde. Wenn ihr mir ein Spiel nennt, was die Dinger blockt, dann teste ich das mal, die Videothek ist um die Ecke =). Wäre bereit mich aufzuopfern sowas ähnliches zu Entwickeln, wenn jemand mehr Àhnung von DirectX, DirectX Hooks und etlichem hat. Genügend Zeit hab ich, mein derzeitiges Projekt steht kurz vor der Fertigstellung zu Version 1.0 und sämtliche Bugs sind, wie sagt der Engländer so schön ? "Annihilated" ^^ Also, schaut euch mal JoyToKey an und Debugged das ganze mal mit Olly oder SoftIce, sieht wirklich interessant aus. Ich hoffe ich mach mich mit dem Debuggen nicht strafbar, hab ja nichts am Ursprünglichen Code verändert, wenn doch, dann sagts mir, damit ichs rechtzeitig editieren kann ^^. Gruß Angelo |
Re: Spiel blockiert SendKey und andere virtuelle Eingaben
Hab mein Joystick hüpsch konfiguriert und funktioniert auch in Windows...
Im geschützten Spiel... Pustekuchen :roll: |
Re: Spiel blockiert SendKey und andere virtuelle Eingaben
So ich greife das Thema nochmal von anderer Seiter her auf und führe das Thema mal passend weiter...
eins Vorweg: Ich hab mich bis jetzt weniger mit Hooks und ähnlichem beschäftigt, also sprich alles was unter der Oberfläche der Win-API funktioniert, bzw. was mit dem darunter möglich ist... Alles Besprochene werde ich an dem Spiel testen, welches ich zz. ab und an spiele und zwar ![]() So nun komm ich mal langsam zum Thema... Im Grunde geht es mir jetzt nicht mal unbedingt um eine Cheatengine, einen Bot oder sonstiges Spielmanipulierendes, da ich eigentlich nicht wirklich viel spiele und auch keinen Sinn sehe da wo zu betrügen... somit geht es hier nur bis zu dem Punkt an dem Spielmanipulationen möglich wären und dies ist ev. schon ein langer Weg... (kann das nicht beurteilen) So kommen wir zu dem oben genannten Spiel zurück. Dieses Spiel verwendet nebenbei eine Software namens "X-Trap" ist sowas ähnliches wie "Gameguard" und die anderen Protection Tools... Nun wie dem auch sei, wird diese Art von Software immer rabiater und wird für einen Gelegenheitsspieler wie mich, der beim Spielen nebenbei noch andere Dinge macht zum großen nervenden Etwas... Warum?
Als Beispiel zu erwähnen wäre:
Nun die große Preisfrage, wie machen das diese Tools? Gut, einfach mal nachgedacht, werden das wohl alles Hooks sein, nur davon gibts ja scheinbar auch mehrere Arten, die die ich vom Namen her kenne sind:
Auch wenn ich mir Code anschau z.B. die ![]() ![]() Um da mal mit anderen Interessierten hinter die Kulissen zu schaun hab ich da mal eine kleine Schrittplanung gemacht die ich jetzt persönlich mal abarbeiten möchte und mich auch interessiert: 1. Was macht dieses "X-Trap" genau (Mindmap) (Was) 2. Womit macht "X-Trap" dieses Was? Wie bekomme ich es heraus? (Womit) 3. Wie kann ich diese/ähnliche genutzte Funktion von "X-Trap" selbst implementieren. (Wie) Als letztes kommen die Punkte: 4. Wie kann ich es umgehen... 5. Wie kann ich es deaktivieren... Dies Schlussendlich natürlich mit eigenen Mitteln und nicht mit Fremdkomponenten, da diese kein Lerneffekt hervorrufen... So dies wäre der Lehrplan, fehlt nur noch der Lehrer, bzw. eine passende Gruppe die sich ebenfalls damit beschäftigen mag... Bye Christian |
Re: Spiel blockiert SendKey und andere virtuelle Eingaben
Ich habs mir jetzt auch runtergeladen, ich schaus mir auch mal an, wenn ich heute mehr Zeit finde. Sorry für den Spam ^^, aber ich woljetzt sitzen wir schon zu zweit daran.
Nen Bot schreiben mit dem Packet-Sniffing und TimeStamp und Checksummen und evtl Verschlüsselung... ich habs damals aufgegeben, so gut im analysieren bin ich nicht =) Gruß Angelo |
Re: Spiel blockiert SendKey und andere virtuelle Eingaben
Ich will mich auch mal zu diesem Thema äussern,ich finde das eine schande :)
Ich würde aber gerne auch mal mein eigenes Makro Programm schreiben (bzw Bot). Doch würde ich es auch gerne mal in Packetform probieren ;) da dies viel einfacher und unumständlicher ist. Aber hier auch ein paar beweise was passiert wenn die Packete Falsch analysiert (gesnifft) werden ;) ![]() ![]() mfg InZiDeR |
Re: Spiel blockiert SendKey und andere virtuelle Eingaben
moin moin!
habe hier folgendes gefunden. schaut nach dem aus was ihr sucht :-) [C++] DirectInput Hooking component and sample ![]() vielleicht isses ja genau das was benötigt wird und jemand setzt sich hin und schreibt das mal für die allgemeinheit nach delphi um :-) gruß reli edit1: hier noch nen link den mir g00gle ausgespuckt hat: ![]() behandelt ziemlich genau das thema :-) edit2: noch ein anderer denkansatz: schonmal jemand versucht solche spiele via vnc zu spielen? also auf rechner a einzuloggen und mit rechner b via vnc auf rechner a zugreifen und dann sich in nem game oder so zu bewegen? wenn das klappt kann man sich ja mal z.b. den source von ![]() edit3: ich weiß ich nerve... noch ne idee: direkt in den tastaturbuffer schreiben...via VxD ![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:40 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