public class CallExe{
public static void main(String args[]){
Runtime rn=Runtime.getRuntime();
Process p=null;
try{
p=rn.exec("cmd.exe /c helloWorld.exe");
}catch(Exception e){
System.out.println("Error exec helloWorld!");
}
}
}
看网上的资料,提供了这种调用exe文件的方法。但我试过,exe文件没有执行,然后,我又试着把helloWorld.exe换成 notepad 或者 某个txt文件,能正常执行。
请各位指教指教,怎样才能正常执行exe文件。
------解决方案--------------------
你这个helloWorld.exe确实存在么?
是在windwos环境变量path能找到的地方么?
------解决方案--------------------
- Java code
import java.io.IOException;public class Ping{ /** * @param args * String的split方法也是可以分割字符串的 */ public static void main(String[] args) { // TODO Auto-generated method stub try { java.lang.Runtime.getRuntime().exec("cmd.exe /c start D:\\test.exe");//这儿 process.waitFor(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } }}
------解决方案--------------------
- Java code
import java.io.IOException;public class Ping{ /** * @param args * String的split方法也是可以分割字符串的 */ public static void main(String[] args) { // TODO Auto-generated method stub try { Process p=java.lang.Runtime.getRuntime().exec("cmd.exe /c start E:\\_WorkBench\\HelloWorld\\HelloWorld.exe");//注意这里 p.waitFor();//注意这里 } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } }}