Sendkey an Fenster über dessen handle

  • Hiho zusammen,


    SuFu brachte leider nichts zu Tage für mein spezielles Problem :(


    Ich habe zwei Fenster mit identischem Titel. Auto It Window Info liefert als einziges Unterscheidungsmerkmal die beiden verschiedenen Handles der Fenster.

    Ich möchte gerne mein Script dahingehend erweitern, dass es es alle 5 Sekunden einen Tastenschlag an Fenster B sendet, während Fenster A im Vordergrund von mir manuell bedient wird.


    Welches ist der Lösungsansatz? Die (sich ja ändernde) Handlenummer bei jedem Start manuell anzugeben macht mir nichts aus :)


    Hoffentlich könnt Ihr helfen...

  • ControlSend() schickt afaik etwas zu einem Control - repräsentiert durch seine ControlID.


    Ich schrieb, dass ich einen Tastendruck an ein Fenster schicken möchte - geht das mit ControlSend() auch?

  • Mit _WinAPI_FindWindow das Handle bestimmen und mit _SendMessage wird die Nachricht abgeschickt.

    Im zweiten Skript (Empänger) muss die Nachricht dann entsprechend abgehandelt werden.

    Weiss nicht so ganz was du meinst, willst du das zwei Skripte miteinander kommunizieren?

  • Erst mal vielen Dank für Deine Antwort - obwohl ich glaube, dass ich so tiefes Fachwissen noch nicht habe...

    Nein, keine zwei Scripte.

    Beispiel:

    Ich habe Spiele in zwei Fenstern laufen (z.B. ein MMORPG).

    In Fenter eins spiele ich "ganz normal" - dieses Fenster hat den Fokus und soll ich auch behalten. Dieses Fenster hat auch nichts mit dem Script zu tun.

    Was ich benötige, ist ein Script, dass alle 5 Sekunden die Taste "1" (Eins) an das zweite Spielfenster sendet, ohne dass Fenster eins den Fokus verliert. Wohlgemerkt, an das Fenster. Es gibt kein identifizierbares Control dort drin.

    Fenster zwei soll also "denken": "Oh, da hat jemand die Taste 1 gedrückt".


    So weit verständlich ausgedrückt?