java调用cmd打开64位程序
利用Runtime取得实例后,CMD命令+目录就OK了。
public static void main(String[] args) throws IOException {
Runtime.getRuntime().exec("cmd.exe /c "+ " start C:\\Users\\kzx\\Desktop\\委托交易.lnk ");
}
但是如果是除了Runtime,还利用Process,如下 代码片
,就会报错:
Exception in thread “main” java.io.IOException: Cannot run program “C:\Users\TruthK\Desktop\委托交易.lnk”: CreateProcess error=193, %1 不是有效的 Win32 应用程序。
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
at java.lang.Runtime.exec(Runtime.java:620)
at java.lang.Runtime.exec(Runtime.java:450)
at java.lang.Runtime.exec(Runtime.java:347)
at One.test.main(test.java:18)Caused by: java.io.IOException: CreateProcess error=193, %1 不是有效的
Win32 应用程序。 at java.lang.ProcessImpl.create(Native Method) at
java.lang.ProcessImpl.(ProcessImpl.java:386) at
java.lang.ProcessImpl.start(ProcessImpl.java:137) at
java.lang.ProcessBuilder.start(ProcessBuilder.java:1029) … 4 more
public static void main(String[] args) throws InterruptedException, IOException {
Runtime rt = Runtime.getRuntime();
Process ppp = rt.exec("C:\\Users\\kzx\\Desktop\\委托交易.lnk");
ppp.waitFor();
ppp.destroy();
}