InstallShield で作成された setup.exe
のサイレントインストールを行うスクリプトを作成する方法を説明します。
InstallShield(インストールシールド)は、ソフトウェアをコンピューターに導入する「インストーラー」を開発するためのソフトウェアです。
米フレクセラ(Flexera)社が開発・販売しています。
このソフトウェアで開発されたインストーラー.exe(この後はsetup.exeで統一して表記します)でのサイレントインストール方法について説明します。
ユーザーが直接インストーラーを実行できない環境(権限不足やポリシーなどの制限)にて管理者がインストーラーをサイレントで実行したいことがあります。
以下のようなパターンです。
- 社内の複数のPCに同じソフトウェアを展開する際にユーザーの操作を省略したい
- GPOでスクリプト実行でインストールさせたい(スタートアップスクリプトやシャットダウンスクリプトはSYSTEM権限で実行されます)
- SCCMやIntuneなどを使用してソフトウェアを展開したい
このような時にInstallShield で作成された setup.exe
のサイレントインストールスクリプトを作成する方法をこの記事では説明します。
1. InstallShield のサイレントインストールとは?
InstallShield のセットアップは、コマンドラインオプションを使用してインストールの自動化が可能です。特に サイレントインストール は、ユーザーの操作なしでインストールを実行する方法です。
2. InstallShield のセットアップタイプを確認
まず、setup.exe
が InstallShield で作成されたものであることを確認します。
方法1: コマンドラインでバージョン情報を確認
コマンドプロンプトを開き、以下のコマンドを実行します。
setup.exe /?
このコマンドを実行すると、利用可能なコマンドラインオプションが表示されます。
もし InstallShield
に関連するオプション(例: /s
, /r
, /f1
など)が表示されれば、InstallShield ベースのインストーラーです。
方法2: EXEファイルを解析
もし /?
オプションで情報が出なければ、以下の方法で確認できます。
setup.exe
を右クリックし、「プロパティ」を開く。- 「詳細」タブを開き、「製品名」または「コメント」をチェック。
- InstallShield を使っている場合は「InstallShield」関連の記述があることが多い。
3. サイレントインストールのためのセットアップスクリプト作成
方法1: レコード方式を使用する(InstallScriptベースのセットアップ)
- 記録モードでセットアップを実行し、レスポンスファイル (
setup.iss
) を作成する。
setup.exe /r /f1"setup.iss"
setup.iss
ファイルが作成されていることを確認(C:\\Windows
に保存されることが多い)。setup.iss
を使用してサイレントインストールを実行。
setup.exe /s /f1"setup.iss"
方法2: MSI インストーラーを利用する(MSIベースのセットアップ)
setup.exe
から.msi
を抽出(可能な場合)。
setup.exe /a
- MSI が抽出できた場合、以下のコマンドでサイレントインストール可能。
msiexec /i setup.msi /qn /norestart
4. バッチスクリプトで自動化
以下は、setup.exe
を使ってサイレントインストールを実行するバッチスクリプト (install.bat
) の例です。
@echo off
echo インストールを開始します...
setup.exe /s /f1"setup.iss"
echo インストールが完了しました。
exit
5. インストール後の確認とログ取得
サイレントインストールが成功したか確認するため、ログを有効にすることが可能です。
setup.exe /s /f1"setup.iss" /f2"install.log"
ログ (install.log
) を確認し、インストールが成功したかチェックしましょう。
6. まとめ
setup.exe /?
でオプションを確認。setup.exe /r
でsetup.iss
を作成し、setup.exe /s
でサイレントインストール。.msi
があればmsiexec /i setup.msi /qn
でインストール。- ログ (
/f2
) を活用してトラブルシュート可能。
この方法を使えば、スクリプトを使った自動インストールが可能になります!
免責規定
この記事で提供される情報は、一般的なガイダンスを目的としており、すべての環境やシステムでの動作を保証するものではありません。
OSのバージョンやリリースによっては、記載されている事が実行できない、または異なる結果をもたらす可能性があります。
また、会社所有のパソコン、スマホ、タブレットなどでは、ポリシーや権限によって実行できない場合があります。
この記事の情報を使用することによって生じる問題や結果について、筆者およびサイト管理者は責任を負いません。
すべての操作は自己責任で行ってください。
最後までお読みいただきありがとうございました。
またお会いしましょう!
コメント