Hallo zusammen,
erst vor kurzem bin ich auf AutoIt aufmerksam geworden, deswegen bin ich in diesem Thema noch sehr unerfahren und hatte daher die Hoffnung, dass mir eventuell hier weitergeholfen werden kann.
Mit Hilfe von AuoIt konnte ich bereits ein Skript schreiben, welches das Programm DOSBox öffnet und viele Abfolgen von Tastatureingaben ausführt. Das Programm funktioniert bisher gut, nur lässt es sich nicht im Hintergrund ausführen. Die Befehle für die Eingaben gebe ich bisher mit „Send“ weiter.
Nun wollte ich die Funktion „ControlSend“ verwenden. Leider scheitert es aber genau hieran, weil die Eingaben nicht zur DOSBox geschickt werden. Zum Vergleich habe ich es bei einem cmd-Fenster ausprobiert, hierbei funktioniert der Befehl.
Run("C:\WINDOWS\system32\cmd.exe")
Sleep(1000)
Local $sTitle1 = WinGetTitle("[ACTIVE]")
$hWnd1=WinGetHandle($sTitle1)
ControlSend($hWnd1, "", "", "12345") ;Zahlenfolge wird geschickt
Sleep(2000)
WinClose($sTitle1)
Run("C:\Program Files\DOSBox-0.74-2\DOSBox.exe")
Sleep(1000)
Local $sTitle2 = WinGetTitle("[ACTIVE]")
$hWnd2=WinGetHandle($sTitle2)
ControlSend($hWnd2, "", "", "12345") ;Zahlenfolge wird nicht geschickt
Sleep(2000)
WinClose($sTitle2)
Alles anzeigen
Kann mir jemand sagen, wo mein Fehler liegt und wenn möglich auch weiterhelfen?