In EXE-Eingabeauffordungsfenster Daten eintragen

  • #1
K

Katrinchen

Guest
Hallo,

ich habe leider wenig Ahnung von Scriptprogrammierung (welche Sprache ist eigentlich egal, denke mal batch-Datei ist am einfachsten) und habe folgendes Problem:

Ich muss eine exe starten mit Parametern (durch die exe startet ein eingabeaufforderungsfenster), und in diesem Fenster muss dann automatisch nach einer kurzen Wartezeit durch das Script etwas eingegeben werden + Bestätigen der Eingabe (Enter).

Geht so etwas und wenn ja hat jemand eine Idee wie?

Vielen Dank dank für eine Antwort im voraus.
Katrin
 
  • #2
Muss die Wartezeit wirklich sein? Probier mal ob es auch ohne geht:
Öffne ein Editorfenster, schreibe die Eingabezeile hinein, drücke dann die Entertaste und speichere die Datei als Eingabe.txt im gleichen Ordner wie die Exe ab.
Dann rufst Du die Exe so auf: die.exe <eingabe.txt

Falls das nicht funzt, kann man versuchen mit VBScript die Tastatureingaben zu simulieren:

Code:
set shell=createobject(wscript.shell)
shell.run notepad   ->Kommentar: Editor starten (als Beispiel)
wscript.sleep(5000)   ->Kommentar: 5000 Millisekunden warten
shell.sendkeys eingabe{ENTER}->Kommentar: Tastatureingabe senden

Die Frage ist, was Du mit Eingabeaufforderungsfenster meinst. Ist das eines vom Programm, oder die DOS-Konsole?
Die erste Variante funzt mit vielen Programmen, die in der Konsole laufen (kommt drauf an, wie sie programmiert wurden), die zweite Variante (VBSkript) funktioniert anscheinend nicht mit der Konsole. Zumindest nicht bei mir (Win98).
 
  • #3
Die erste Variante funktioniert leider nicht.
Es läuft so ab: Ich öffne eine DOS-Console und starte die exe mit Parametern. Dann dauert es kurz bis man in der selben DOS-Console die von der exe geforderten Daten eingeben kann .

Code:
set shell= createobject (wscript.shell)
shell.run cmd.exe
shell.sendkeys test.exe backup
shell.sendkeys {ENTER}
shell.sleep(5000)
shell.sendkeystest{ENTER}

Fehler:
Zeile mit Sleep Das Object unterstütz diese Eigenschaft oder Methode nicht:->sleep'

Wie könnte das sleep sonst funktionieren?
 
  • #4
Dann dauert es kurz bis man in der selben DOS-Console die von der exe geforderten Daten eingeben kann .
Ob die erste Möglichkeit funzt, hängt von der Programmierung ab. Zum Einen, ob der Programmierer den Standardinput benutzt und zum Anderen, ob vor der Eingabeaufforderung der Eingabepuffer mit älteren Eingaben geleert wird. Falls nicht, ist das mit der kleinen Pause nämlich egal.

Wie könnte das sleep sonst funktionieren?
Du hast da was verwechselt: WSCRIPT.sleep! ;)
 
Thema:

In EXE-Eingabeauffordungsfenster Daten eintragen

ANGEBOTE & SPONSOREN

Statistik des Forums

Themen
113.840
Beiträge
707.963
Mitglieder
51.494
Neuestes Mitglied
Flensburg45
Oben