- December 11, 2008
- 1,456
- 185
- Home Country
-
Germany
AW: per Batch Programme in best. Reihenfolge starten
Natürlich geht es auch simpel. Kann dann aber Probleme machen.
Simpel wäre
Daraus ergeben sich aber ggf. Probleme.
Wenn das Notepad länger wie eine Sekunde braucht werden die Tastatureingaben trotzdem getätigt.
Daher wird mit folgendem Code gewartet bis das Fenster mit dem Titel Notepad aktiv ist und setzt erst dann die Eingaben fort. Zusätzlich gibt es eine Notausgang nach 20 Sekunden. Kann das Notepad nämlich nicht gestartet werden, befindet man sich in einer Endlosschleife. Da hilft dann nur der Taskmanager.
Und folgende If Then Schleife prüft nur, ob das Fenster auch vorhanden ist.
Zusätzlich empfiehlt es sich das Fenster öfters in den Vordergrund zu holen und zu aktivieren. Wenn die Tasteneingaben in ein anderen Programm wandern kann dies unerwartete Folgen haben. Daher:
Gruß
Larry
Natürlich geht es auch simpel. Kann dann aber Probleme machen.
Simpel wäre
Code:
Set WshShell = Wscript.CreateObject("WScript.Shell")
intreturn = wshshell.run(chr(34) & "C:\WINDOWS\Notepad.exe"&chr(34) ,9,false)
wscript.sleep 1000
wshShell.SendKeys "Eine Zeile Text"
Daraus ergeben sich aber ggf. Probleme.
Wenn das Notepad länger wie eine Sekunde braucht werden die Tastatureingaben trotzdem getätigt.
Daher wird mit folgendem Code gewartet bis das Fenster mit dem Titel Notepad aktiv ist und setzt erst dann die Eingaben fort. Zusätzlich gibt es eine Notausgang nach 20 Sekunden. Kann das Notepad nämlich nicht gestartet werden, befindet man sich in einer Endlosschleife. Da hilft dann nur der Taskmanager.
Code:
while wshShell.AppActivate("Notepad") = FALSE and a<>20
a=a+1
wscript.sleep 500 '500 Millisekunden warten
wend
Und folgende If Then Schleife prüft nur, ob das Fenster auch vorhanden ist.
Code:
if wshShell.AppActivate("Notepad") = True then
Anweisungen
end if
Zusätzlich empfiehlt es sich das Fenster öfters in den Vordergrund zu holen und zu aktivieren. Wenn die Tasteneingaben in ein anderen Programm wandern kann dies unerwartete Folgen haben. Daher:
Code:
wshShell.AppActivate("Notepad")
Gruß
Larry