try {
         Process p = null;
p = Runtime.getRuntime().exec("mailto:[email protected]");
Thread.sleep(5000);
p.destroy();//关闭p所对应的进程
} catch (IOException e1) {
// TODO 自动生成 catch 块
e1.printStackTrace();
}
执行以后报告异常如下:
java.io.IOException: CreateProcess: mailto:[email protected] error=2
at java.lang.ProcessImpl.create(Native Method)
at java.lang.ProcessImpl.<init>(ProcessImpl.java:81)
at java.lang.ProcessImpl.start(ProcessImpl.java:30)
at java.lang.ProcessBuilder.start(ProcessBuilder.java:451)
at java.lang.Runtime.exec(Runtime.java:591)
at java.lang.Runtime.exec(Runtime.java:429)
at java.lang.Runtime.exec(Runtime.java:326)
at TestProperties.main(TestProperties.java:21)
我该用什么方法实现这个功能呢?请求指教!

解决方案 »

  1.   

    mailto:[email protected]不是一个windows的应用程序
    exec()内放置的是可执行文件命令
      

  2.   

    里面放outlook的程序的名字。
      

  3.   

    mailto:[email protected] 改成 msimn 就OK了 (msimn就是outlook的可执行文件)
      

  4.   

    好象还是不行,我查看了有关资料。好象exec只能执行jvm命令,对于操作系统命令的操作应该有别的方法吧?有哪位比较明白的,请给予指教,感谢!
      

  5.   

    exec能运行所有平台下的命令,包括win和linux,关键是exec的参数是一个能正确找到位置的可执行命令。路径和命令名都要写对
      

  6.   

    java5以后,建议使用ProcessBuilder来建立这个Process
      

  7.   

    找到Outlook的可执行文件,传给exec就可以了