メモ:Setup.msiのエラーログを得る

アプリのインストーラを実行したら、「インストーラは未完了です。」「***のインストール中にインストーラが中断されました。」のようなメッセージが出てインストールが中断される場合、コマンドプロンプトからオプションを指定してインストーラを実行するとエラーログを取得できる。

msiexec /i Setup.msi /l logfile.txt

より詳しいログを得たいなら下記のようにする。ただし、詳細すぎてよく分からないかも。

msiexec /i Setup.msi /l*vx logfile.txt

エラーログ解析の一例

まずログの中にエラーコードを見つける。

CustomAction WEBCA_SetTARGETSITE returned actual error code 1603
  • CustomAction は msiパッケージをインストールするための仕組み
  • WEBCA_SetTARGETSITE はWebアプリをインストールするためのカスタムアクション
  • 1603 は、致命的なエラーが発生してインストールを中断したことを示すエラーコード

例えば、IIS 6 以前で動かしていたWebアプリをIIS 7 以降にインストールしようとするとこのようなエラーが発生する。この場合、下記の対策をするとインストールできるようになる。

  • 「プログラムと機能」>「Windowsの機能の有効化または無効化」で 「Webサーバー(IIS)」の中の「IIS 6 管理互換」(とくに「IIS 6 メタベース互換」)を追加

参考

IIS 6 以前で動かしていたアプリをIIS 7.5 にインストールする際の注意点