Announcement

Collapse
No announcement yet.

Probleme mit SendKeys

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Probleme mit SendKeys

    Hi, <br>

    ich habe Probleme mit SendKeys (Sndkey32.pas).<br>

    Starte ich eine Konsolenanwendung (mit CreateProcess(...)) aus einer GUI-Anwendung heraus und versuche (ich setze den Fokus auf die Konsole - SetForegroundWindow-) mittels SendKeys einen 'Befehl' auf der Konsole laufen zu lassen schreibt SendKeys nur die ersten paar Buchstaben auf die Konsole. Fahre ich mit der Maus ueber die Konsole, dann wird der ?Puffer? geleert und der Rest der Anweisung wird auf die Konsole geschrieben.<br>

    Frage::<br>
    Gibt's sowas wie ein Flush fuer SendKeys oder eine Idee die obiges Problem loest? Es muss dabei beachtet werden, dass ich im Normalfall die Konsole mit MoveWindow ins 'Nirwana' schicke.

  • #2
    Hallo,

    die Antwort auf diese Frage hängt von den "Fähigkeiten" der Consolenanwendung ab (genauer gesagt, wie oft dort die Botschaftswarteschlange ausgelesen wird). Oftmals reicht es aus, über <b>Sleep</b> die geschickten Zeichen etwas zu verzögern, damit auch eine "bummelnde" Anwendung damit zurecht kommt. Ansonsten kann man versuchen, vor jedem Zeichen über <b>AppActivate</b> die Consolenanwendung etwas auf Trapp zu bringen

    Comment


    • #3
      Ein erneutes mal Hallo (du hast mir schon einmal geholfen :-) ),<br>

      das lustige ist, dass wenn ich nur mit der Tastatur arbeite, also insbesondere die Buttons, auf die ich die SendKeys-Funktionsaufrufe gelegt habe mit der Tatstatur bediene (ueber TAB und SPACE-Taste), dann funktioniert alles.<br>

      Irgendeine Idee warum das dann?

      Gruss
      No"

      Comment


      • #4
        Hallo,

        in diesem Fall würde ich anstelle von <b>Sleep</b> regelmässig einen Aufruf von <b>Application.ProcessMessages</b> einschachteln, damit die eigene Botschaftswarteschlange regelmässig ausgelesen wird

        Comment

        Working...
        X