所以我尝试像运行exe文件一样运行.msi文件,这可能是问题所在。我收到此错误消息
java.io.IOException:无法运行程序" \":CreateProcess error = 193, %1不是有效的Win32应用程序
try { Runtime rf = Runtime.getRuntime();
Process pf = rf.exec("\\IE8fix.msi");
} catch(Exception e) {
System.out.println(e.toString());
e.printStackTrace();
}
答案 0 :(得分:4)
Windows安装程序位于%windir%\ msiexec.exe中
MSI文件不是独立的。它需要像msiexec \"file.msi\"
一样运行
所以使用:
try {
Runtime rf = Runtime.getRuntime();
Process pf = rf.exec("msiexec /i \"\\IE8fix.msi\"");
} catch(Exception e) {
//System.out.println(e.toString()); // not necessary
e.printStackTrace();
}
答案 1 :(得分:0)
.msi文件不是像exe这样的独立程序,应该从Windows Installer运行这样的东西(我希望这是正确的):
Process pf = rf.exec("msiexec \"\\IE8fix.msi\"");