質問: 下記のコマンドで応答ファイルを作成し、応答ファイル使ってサイレントインストールを行った所、ResultCode=-3でエラーになってしまいます。 このエラーコードは応答ファイルに必要なデータがないのが原因とのことですが、応答ファイルを作成したマシンとサイレントインストールを行ったマシンは同じであり、システムの違いなどはありません。考えられる原因は何かありますでしょうか? 環境はwindows10 proです。 ``` > hogeapp.exe /r /f1"c:\setup.iss" > hogeapp.exe /s /f1"c:\setup.iss" /f2"c:\test.log" ``` **test.log** ``` [ResponseResult] ResultCode=-3 ```
回答: アンインストールせずに続けてサイレントインストールを行っていませんか? 初回インストールとインストール済み環境へのインストールは処理手順が変わることが多いでしょう。 初回インストールに伴って自動的に作られる応答ファイルでは、そうした状況に対応できないのでは? 以下のような対処が考えられます。 * いったんアンインストールしてからサイレントインストールする * インストールされていない他のPCでサイレントインストールする * インストール済み環境へのインストールの応答ファイルも作って、 別途インストール有無をチェックして指定する応答ファイルを切り替える InstallShieldのFAQ記事 01745 : サイレントインストールを行う方法 > > 1.コマンドラインから /r オプションを指定してインストールを実行し、応答ファイルを作成します > > > setup.exe /r > > > ※ダイアログで操作した内容が、自動的に応答ファイルへ記録されます > > > 2.Setup.iss(応答ファイル)が Windows フォルダー(c:\windows)に作成されていることを確認します > > > ※応答ファイル作成後は、製品がインストールされた状態となっています。必要に応じて、アンインストールを行ってください。 > > > 類似の現象と思われる記事 11.2.3 インストール型クライアントのサイレントインストール > > V13.2.0の検疫クライアントをすでにインストールしている場合は、エラーとなります。\Disk1\setup.logファイルには以下のように出力されます。 > > > > ``` > [InstallShield Silent] > Version=v7.00 > File=Log File > [ResponseResult] > ResultCode=-3 > > ``` > > 付録B サイレントインストール > > ログファイルの確認と対処 > > - インストール結果の確認 > > ログファイルを開き、[ResponseResult]セクションの“ResultCode”を参照してください。 > > 以下に復帰値の意味を記載します。 > > > > ``` > -3 対象システムの環境により、応答ファイルと異なるシーケンスで実行された場合 > ・インストールフォルダ配下にInterstageの資源が残っている、またはInterstageがインストール済 > ・ディスク容量不足 > ・排他ソフトウェアが存在 > ・異なるバージョン・レベル/エディション、またはサーバパッケージのインストーラを用いて作成した応答ファイルを指定した場合。 > > ``` > >