(evtl. WinAPI) Ereignis eines Programms mitkriegen



  • Hallo, freitag Nachmittag,

    ich möchte gerne 2 Schachprogramme gegeneinander Spielen lassen,

    dazu muss ich mitkriegen:

    - ein Ereignis des einen Programms, eine Aktualisierung der Benutzeroberfläche,
    - Eingabe des anderen Programms,
    - Synchronisierung der InGame-Uhr
    - und umgekehrt.

    Kann ich dazu die Arena.exe verändern? Kann ich den Speicherbereich des RAMs überwachen? Das andere Programm läuft mit Flash im Browser.

    Vielen Dank im Voraus für Eure Hilfe. 😋 😕

    odlavselphobjchtmsjsamm



  • Normalerweise gibt es dafür doch die Engine-Engine-Funktion vieler Schachoberflächen? 🙂
    > Kann ich dazu die Arena.exe verändern?
    Kannst du gerne versuchen, wenn du fit im Disassembling bist.
    > Kann ich den Speicherbereich des RAMs überwachen? `

    Schon besser; Stichworte: EnableDebugPriv,ReadProcessMemory> Das andere Programm läuft mit Flash im Browser.`
    Das fütterst du am besten mit Mauseingaben via SendInput (die Fenster+Brettkoordinaten musst du natürlich dynamisch ermitteln), Flash-Zeugs lässt sich schwer hooken.

    Dein Cheatprogramm würde einfacher werden, wenn du dir selbst einen kleinen UCI-Wrapper für deine Favoriten-Engine auf Kommandozeilenebene baust (also statt arena), den fütterst du dann mit der aktuellen Spielstellung, lässt kurz bestmove berechnen, rechnest damit und den Fensterkoordinaten die Mausbewegung aus und führst sie aus.


Anmelden zum Antworten