Java 8 运行 .exe 文件由 Process Builder 使用参数最小化
Java 8 Running .exe file minimized with arguments by Process Builder
我需要 运行 一些带有参数的最小化 .exe 文件。现在,使用我的代码,我可以 运行 正常 window。
这是我的代码:
ProcessBuilder pb = new ProcessBuilder(directoryString, myArg1, myArg2);
Process pr = pb.start();
我找到了这个解决方案:
start /min "" directoryString
但我不知道如何在带有参数的进程的 ProcessBuilder 上使用它。
start 实际上是一个 Windows cmd 命令。
因此:通过调用
使其隐含
cmd.exe /start....
通过 Java 流程构建器;概述 here.
我的意思是:先开一个windowsconsole/terminal;并建立了一个像
这样的命令
cmd.exe /c start /min ....
以及何时适用于 运行 您的程序;然后使用 that 字符串作为 Java ProcessBuilder 的输入。您可能还会找到一些更有帮助的示例 here.
我是这样做的:
String args = "myArg1";
String cmd = "cmd.exe /C START /MIN directoryString ";
Runtime.getRuntime().exec(cmd + args);
directoryString 之后必须是一个 space,否则 cmd 会把它读成一个没有 spaces 的字符串并尝试打开现有文件。
我需要 运行 一些带有参数的最小化 .exe 文件。现在,使用我的代码,我可以 运行 正常 window。 这是我的代码:
ProcessBuilder pb = new ProcessBuilder(directoryString, myArg1, myArg2);
Process pr = pb.start();
我找到了这个解决方案:
start /min "" directoryString
但我不知道如何在带有参数的进程的 ProcessBuilder 上使用它。
start 实际上是一个 Windows cmd 命令。
因此:通过调用
使其隐含cmd.exe /start....
通过 Java 流程构建器;概述 here.
我的意思是:先开一个windowsconsole/terminal;并建立了一个像
这样的命令cmd.exe /c start /min ....
以及何时适用于 运行 您的程序;然后使用 that 字符串作为 Java ProcessBuilder 的输入。您可能还会找到一些更有帮助的示例 here.
我是这样做的:
String args = "myArg1";
String cmd = "cmd.exe /C START /MIN directoryString ";
Runtime.getRuntime().exec(cmd + args);
directoryString 之后必须是一个 space,否则 cmd 会把它读成一个没有 spaces 的字符串并尝试打开现有文件。