【发布时间】:2011-05-29 15:34:51
【问题描述】:
我正在尝试使用 java 运行外部程序 Decoder.exe: Runtime.getRuntime().exec("C:\fullpath-and-so-on\Decoder.exe -h");像这样:
try{
Process p = Runtime.getRuntime().exec("C:\\fullpath-and-so-on\\Decoder.exe -h");
}
catch(Exception e){
e.printStackTrace();
}
这适用于我尝试过的所有其他程序。但是每当我从 java 执行它时,Decoder.exe 就会崩溃。 java 执行得很好并且不会产生任何异常,但是被调用的程序 Decodes.exe 停止工作。程序 Decoder.exe 在单独的 cmd 窗口中运行时完美执行。
有没有人遇到过类似的问题? java运行exec和cmd.exe运行程序有什么不同?是否有已知的解决方法或者我只是在某个地方犯了错误?
非常感谢您的帮助! BR, 弗雷德里克
【问题讨论】:
-
您对发生什么错误有任何线索吗?执行环境可能与程序运行所在的文件夹略有不同。
-
没有任何线索。由于它是停止工作的被调用程序,我没有得到堆栈跟踪。由于使用了 Decoder.exe 的完整路径,我认为当前路径无关紧要(?)
标签: java exec decode wireshark