0

そのため、exeファイルと同じように.msiファイルを実行しようとしますが、これが問題になる可能性があります。このエラーメッセージが表示されます

java.io.IOException:プログラム "\"を実行できません:CreateProcessエラー= 193、%1は有効なWin32アプリケーションではありません

       try {   Runtime rf = Runtime.getRuntime(); 
                   Process pf = rf.exec("\\IE8fix.msi");    
                } catch(Exception e) {                 
                    System.out.println(e.toString());                 
                            e.printStackTrace();
                                                    } 
4

2 に答える 2

5

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();
} 
于 2012-08-16T17:21:11.473 に答える
0

.msi ファイルは exe のようなスタンドアロン プログラムではありません。Windows インストーラーから次のように実行する必要があります (これが正しいことを願っています)。

Process pf = rf.exec("msiexec \"\\IE8fix.msi\"");    
于 2012-08-16T17:21:56.037 に答える