I am trying to use Runtime exec() to run a vba script with arguements. I am having trouble passing in the args. I think I need to use the String[] overloaded method for exec.
Currently this works:
String command = "cmd /c \"\\concat2.vbs\""
Process p = Runtime.getRuntime().exec(command);
But I want to run that with arguments and if I do this
String command = "cmd /c \"\\concat2.vbs\" " + arg1 + " " + arg2
where arg1 and arg2 are strings my program doesnt run (status = 1)
I think I need to use the String[]
overloaded method for exec
Exactly! Change your command to be a String array. The array must contain the command and its arguments:
String[] command = {"cmd","/c", "concat2.vbs", arg1, arg2};
Process p = Runtime.getRuntime().exec(command);
concat2.vbs
should be on Window's execution path (same directory, or configured in the PATH environment variable)
Check out the documentation for the Runtime class.
Something like:
String[] cmd = { "cmd", "/c", "concat2.vbs" "dog" "house" };
Process p = Runtime.getRuntime().exec(cmd);
Should produce 'doghouse'