2016-05-03 3 views
-1

Ich bin neu in Java, Ich muss das Skript run.vbs aus einem bestimmten Ordner ausführen sagen C: \ Users \ Application \ Tools \ run.vbs. Ich bin in der Lage, das Skript von "Windows run" zu starten, indem Sie einfach den Speicherort angeben, d. H. "C: \ Users \ Application \ Tools \ run.vbs" und klicken Sie auf "Enter". Aber, wenn ich das gleiche scirpt rufen mit:Wie man ein .bat oder .vbs-Skript aus einem bestimmten Ordner mit Java-Programmierung ausführen kann

Runtime.getRuntime().exec("C:\\Users\\Application\\Tools\\run.vbs") 

Es gibt dem Fehler „nicht in der Lage, die angegebene Datei xxxx.war zuzugreifen“, das ist die Datei vbs Skript zugreift.

+0

nicht müssen Sie Schrägstriche mit Doppelschrägstriche entkommen? – npocmaka

+0

Ein schnelles Google für die Funktion 'exec()' hätte die [Drei-Argument-Version] (https://docs.oracle.com/javase/7/docs/api/java/lang/Runtime.html#exec) gezeigt (java.lang.String,% 20java.lang.String [],% 20java.io.File)) Was Sie wollen – TripeHound

+0

Runtime.getRuntime(). exec ("start run.bat", null, "C: \ \ Benutzer \\ Anwendung \\ Werkzeuge "); gibt den Fehler –

Antwort

2

Sie könnten den CMD-Befehl zum Ausführen von BAT-Dateien laden/müssen. Die Syntax

cmd.exe /c <command name>. 

Die Java für diesen Befehl lautet:

Runtime.getRuntime().exec("cmd.exe /c <command name>"); 

Zur Referenzierung: http://ss64.com/nt/cmd.html

Für .VBS läuft, ist dies der Weg sein kann:

cscript <your_script>.vbs 

oder

Befehl
wscript <your_script>.vbs 

Java:

Runtime.getRuntime().exec("cscript <your_script>.vbs"); 

Es wird hier dokumentiert: https://technet.microsoft.com/en-us/library/ee156587.aspx

(Meine Antwort ist Windows-abhängig ist.)

Verwandte Themen