Senden von Befehlen an andere Kommandozeilen-Programme
Gibt es eine Möglichkeit, das senden von Befehlen an ein anderes Kommandozeilen-Programm?
'Ursache ich habe eine spezielle Kommandozeilen-Programm, aber ich kann keine Befehle senden, indem Sie eine syntax wie die program.exe something_to_do
das Programm führt so etwas wie dieses: ("hier syntax" ist, wo ich den text eingeben möchten, und geben Sie zusätzlich zu start)
TheWhateverCommandLineProgram
Version 1.1
Give an option: "here syntax"
den Programm-code so aussieht:
echo TheWhateverCommandLineProgram
echo Version 1.1
Set opt=
set /p opt=Give an option:
if %opt%==command1 goto com1
if %opt%==command2 goto com2
...
Gut, ich denke, so dass es nicht mir, wer es hergestellt hat (btw: natürlich seine nicht genannt TheWhateverCommandLineProgram)
Können Sie das etwas konkreter über das, was das problem ist. Sagen, ein bisschen mehr über das, was Ihr "spezielle Kommandozeilen-Programm" ist und was es ist, Sie tun möchten. Wollen Sie das senden von Befehlen an einem bereits Laufenden Programm oder starten Sie es einfach mit einem bestimmten Satz von Optionen?
InformationsquelleAutor Deniz Zoeteman | 2009-07-29
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie nur wollen, zu geben, die Tastatur-Eingaben auf Kommandozeilen-Programm können Sie einfach
echo
und Leitung:Wenn du mehr brauchst Zeilen, dann schreiben Sie Sie auf eine Datei, und verwenden Sie die Eingabe-Umleitung:
InformationsquelleAutor Joey
Bin ich mir nicht 100% sicher, ob ich verstehe, was du bist suchen für. Hier gibt ' s zwei Optionen:
Haben Sie zwei Fenster, die jeweils über eine batch-Programm. Lassen Sie uns sagen, Sie sind aufgerufen
myscript1.bat
undmyscript2.bat
. Sie wollen zu senden, eine Reihe von Befehlen ausmyscript1.bat
ausgeführt werden, indemmyscript2.bat
Haben Sie ein batch-Skript mit dem Namen
myscript.bat
führt ein einzelnes Programm mit dem Namenprogram.exe
. Sie möchtenprogram.exe
Befehl zum ausführen einiger Befehle, oder machen Sie einen etwas.Sind entweder von diesen, was Sie suchen? Hier ist eine Idee:
Machen
myscript1.bat
erstellen Sie eine Dritte Datei, diemycommands.bat
. Einmalmyscript2.bat
sieht die Dateimycommands.bat
vorhanden ist, wird es führen Sie es und löschen Sie ihn. (Wow. Lame.)Windows Scripting Host-Befehl (es ist gebaut, um Windows seit Win2K) oder Powershell (in der Regel auf den meisten Computern heutzutage, wenn Sie aktualisiert wurden). Entweder von diesen können senden Sie Tastenanschläge an ein anderes Programm. Über diese Tastenanschläge, können Sie kontrollieren, das andere Programm.
Wie kann ich es in Windows Scripting Host-Befehl??
Ich denke, dass der name der Funktion ist
SendKeys
, aber ich kann mich nicht erinnern, welches Objekt Sie brauchen. Googeln mit "sendkeys" ruft Sie zu msdn.microsoft.com/en-us/library/8c6yea83(VS.85).aspx - siehe die Beispiele am Ende der Seite.ähm, das problem ist, es ist nicht verfügbar auf Vista (also auch auf 7?) und dies sollte für die öffentlichkeit freigegeben, so...
in diesem Fall würde ich empfehlen die Verwendung von Powershell, denke ich...
InformationsquelleAutor Shalom Craimer
In welcher form muss das andere Programm nehmen-Eingang? Von der Eingabeaufforderung aus?
Wenn letzteres, dann empfehle ich dir Autohotkey: http://www.autohotkey.com/
Können Sie Autohotkey als eine Brücke, und es sendet den Befehl als Tastendrücke an die Fenster der anderen batch-Datei.
Können Sie um Hilfe bitten, in Ihrem forum. Sie sind sehr hilfreich.
Die Benutzer nicht haben, um geben Sie die Befehle. Autohotkey wird die Typisierung. Lesen Sie das tutorial.
Insbesondere müssen Sie den Befehl Senden: autohotkey.com/docs/commands/Send.htm
InformationsquelleAutor