Maus und Tastendrucksimulation funktioniert nicht! C#

  • C#

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von ~blaze~.

    Maus und Tastendrucksimulation funktioniert nicht! C#

    Sehr geehrte Community,

    Mein C# Programm soll in einem Gamefenster (im Windowmode) entweder einen Tastendruck oder einen Mausklick simulieren. Es funktioniert (getestet) sowohl in Paint, Google Chrome usw. , jedoch nimmt das Spiel die Drücke und Mausklicks nicht an. Früher ging dies jedoch mit demselben Code. Habe es nun schon auf mehrere Varianten versucht.

    Versuche:

    C#-Quellcode

    1. const int WM_LBUTTONDOWN = 0x0201;
    2. const int WM_LBUTTONUP = 0x0202;
    3. const int MK_LBUTTON = 0x0001;
    4. IntPtr handle = new IntPtr(0x00090996); //Your window handle
    5. SetForegroundWindow(handle);
    6. Thread.Sleep(300);
    7. SendMessage(handle, WM_LBUTTONDOWN, new IntPtr(MK_LBUTTON), new IntPtr(y << 16 | x));
    8. Thread.Sleep(300);
    9. SendMessage(handle, WM_LBUTTONUP, new IntPtr(0), new IntPtr(y << 16 | x));


    bzw. statt SendMessage habe ich auch PostMessage benutzt.
    Dann habe ich probiert, den Cursor einfach auf die Position zu setzen, wo er klicken soll und ihn dann klicken zu lassen (auch mit entsprechenden Delays zwischen Clicks), dies hat jedoch auch wieder überall funktioniert nur in dem einen Game nicht.

    Hat jemand Lösungsansätze oder Vorschläge an was es liegen könnte?
    Ich möchte dies nicht dazu benutzen mir Vorteile gegenüber Spielern zu verschaffen oder generell das Spiel zu manipulieren! Mein Ziel ist es im Endeffekt nur, weitere Lösungswege für Probleme dieser Art zu kennen, da ich vor diesem Problem noch nie gestanden bin.

    Liebe Grüße!
    luck2y