Programmieren - alles kontrollieren 4.936 Themen, 20.625 Beiträge

Automatischer Tastendruck an Batchdatei übergeben?!?

AH966 / 3 Antworten / Flachansicht Nickles

Hallo!

Ich habe hier ein Programm zur Wiederherstellung von Daten, das ich automatisiert laufen lassen möchte.

Das Problem ist:

Nach Aufruf des Programms dauert es ca. 30 sec. bis man aufgefordert wird, "Enter" zu drücken.
Danach kommen zwei Fragen, die mit "Y" + "Enter" bestätigt werden sollen. Zwischen den Fragen liegen ca. 10 Sekunden.

Kann man das irgendwie automatisieren???

Habe bereits folgendes versucht:
Eine Batchdatei ruft das Programm mit folgendem Befehl auf:

wiederherstellung.exe
In der Datei antwort.dat stehen eigentlich nur Zeilenwechsel (Enter) und "Y".
Bis zu einem gewissen Punkt komme ich damit, aber dann ist Sense.
Gibt es eine Möglichkeit, das besser zu kontrollieren, z.b. über einen wait-Befehl?


Gruß,AndreasDer Pfad der Gerechten ist zu beiden Seiten gesäumt mit den Freveleien der Selbstsüchtigen und der Tyrannei böser Männer...
bei Antwort benachrichtigen
HotelTango56 AH966 „Automatischer Tastendruck an Batchdatei übergeben?!?“
Optionen

Hallo Andreas,
es hat leider eine kleine Verzögerung gegeben.
Mit der Datenbank kann ich Dir leider auch nicht helfen.
Mit der Antwordatei verhält es sich folgendermaßen. Durch das Kleiner-Zeichen wird die Standardeingabe (stdin) von der Tastatur umgeleitet, dies kann eine Datei sein, aber auch COM1: oder LPT1: oder TTY:, genauso wie die Standardausgabe (stdout) mit dem Größer-Zeichen umgeleitet werden kann. Leider verhalten sich Programme recht unterschiedlich, nicht alle lesen von stdin oder schreiben in stdout. Aber auch, wenn sie von stdin lesen, verhalten sie sich unterschiedlich, einige lesen zeichenweise, andere zeilenweise, wieder andere lesen alles, einige entleeren den Tastaturpuffer vor dem Lesen. Ontape scheint alles auf einmal zu lesen, so daß man durch das Lesen aus einer Datei nicht weiterkommt. Man kann natürlich auch mit der COM:-Schnittstelle arbeiten, wenn man ontape COM2:".
Elegant ist diese Methode sicher nicht.

Viele Grüße
HotelTango56

bei Antwort benachrichtigen