インターネット ダウンロードのブートストラップ

Windows インストーラーでは、構成可能なブートストラップ実行可能ファイル (Setup.exe) と構成ツール (Msistuff.exe) が、Windows インストーラー開発者向けの Windows SDK コンポーネントに含まれています。 Msistuff.exeを使用してSetup.exeでリソースを構成すると、開発者はWindows インストーラー パッケージの Web インストールを簡単に作成できます。

ブートストラップ実行可能ファイルに必要な最小インストーラー バージョンは、インストーラー バージョン 2.0 Windowsです。 アプリケーションでは、 DllGetVersion を使用してインストーラーのバージョンを取得できます。 詳細については、「Windows インストーラーのバージョンの決定」を参照してください。

Windows Installer SDK で提供されるブートストラップ実行可能ファイルは、次の処理を行います。

  • WinVerifyTrust を呼び出して、.msi ファイルのデジタル署名を確認します。 Windows インストーラー バージョン 2.0 以降のバージョンでは、Windows インストーラー パッケージの署名を有効にするサブジェクト インターフェイス パッケージ (SIP) が提供されます。
  • 必要に応じて、コンピューター上の Windows インストーラーのバージョンをアップグレードします。

Msistuff.exe を使用 して、次のSetup.exeリソースを表示または構成できます。

Resource ID 説明
ISETUPPROPNAME_BASEURL Setup.exeのベース URL の場所。 値が指定されていない場合、Setup.exeの場所は既定でリムーバブル メディアに設定されます。 URL ベースのインストールのみが WinVerifyTrust のチェックの対象となります。 URL の末尾のスラッシュは省略可能です。 このリソースは省略可能です。
ISETUPPROPNAME_DATABASE .msi ファイルの名前。 これは、Setup.exe プログラムの場所を基準にして指定された.msi ファイルへの相対パスです。 リソース ISETUPPROPNAME_PATCHが指定されていない場合は、このリソースが必要です。 ISETUPPROPNAME_DATABASEとISETUPPROPNAME_PATCHの両方を指定することはできません。 2 つのうち 1 つだけを指定できます。
ISETUPPROPNAME_OPERATION 実行する操作の種類。 指定できる値は、INSTALL、MINPATCH、MAJPATCH、INSTALLUPD です。 INSTALL 値は、パッケージの初回インストールに相当します。 MINPATCH 値は、PATCH プロパティで指定されたパッチが小さいアップグレード パッチまたはマイナー アップグレード パッチであることを示します。 MAJPATCH 値は、PATCH プロパティで指定されたパッチがメジャー更新プログラムのパッチであることを示します。 INSTALLUPD は、インストールが初めてのインストールまたは更新プログラムである可能性があることを示します。 INSTALLUPD の使用には、製品の存在に関するブートストラップ チェックがあります。 製品が存在する場合は、再キャッシュ パッケージ フラグが設定され、再インストールが実行されます。それ以外の場合は、通常のインストールが実行されます。 INSTALLUPD は、製品コードが変更されない小規模およびマイナー アップグレード パッケージにのみ使用する必要があることに注意してください。 メジャー アップグレードでは、製品コードが変更され、本質的にまったく新しい製品が作成されるため、REINSTALL は必要ありません。 FindRelatedProducts、MigrateFeatureStates、RemoveExistingProducts アクションに加えて、アップグレード テーブルの作成では、元の製品のアップグレードが処理されます。 したがって、INSTALL オプションで十分です。 このリソースがない場合、ISETUPPROPNAME_DATABASE プロパティが作成されている場合、INSTALL 操作が想定されます。 それ以外の場合は、ISETUPPROPNAME_PATCH プロパティが作成されている場合、MINPATCH が想定されます。 これはオプションの値です。
ISETUPPROPNAME_PRODUCTNAME 製品の名前です。 これは、ダウンロードしたユーザー インターフェイスのバナー テキストで使用される名前です。 このリソースは省略可能です。 省略した場合、名前の既定値は "product" になります。
ISETUPPROPNAME_MINIMUM_MSI Windows インストーラーの最小バージョンが必要です。 Windows インストーラーの最小バージョンがコンピューターにインストールされていない場合は、Windows インストーラーをアップグレードするために適切なInstmsi.exeが呼び出されます。 このプロパティの値の形式は、PID_PAGECOUNT値と同じです。 詳細については、「 ページ数の概要 」プロパティを参照してください。 この値は、Windows インストーラー バージョン 2.0 を識別する値である 200 以上である必要があります。 このリソースは必須です。
ISETUPPROPNAME_INSTLOCATION Windows インストーラーのアップグレード実行可能ファイルのベース URL の場所。 このリソースは省略できます。 この値を省略すると、アップグレード実行可能ファイルの既定の場所はSetup.exeの場所になります。
ISETUPPROPNAME_INSTMSIA Windows インストーラーアップグレード実行可能ファイルの ANSI バージョンの名前。 これは、ISETUPPROPNAME_INSTLOCATIONで指定された場所に対するInstmsi.exeの ANSI バージョンへの相対パスです。 このリソースは必須です。
ISETUPPROPNAME_INSTMSIW Windows インストーラーアップグレード実行可能ファイルの Unicode バージョンの名前。 これは、ISETUPPROPNAME_INSTLOCATIONで指定された場所に対する Unicode バージョンのInstmsi.exeへの相対パスです。 このリソースは必須です。
ISETUPPROPNAME_PATCH .msp ファイルの名前。 これは、Setup.exe プログラムの場所を基準にして指定された .msp ファイルへの相対パスです。 リソース ISETUPPROPNAME_DATABASEが指定されていない場合は、このリソースが必要です。 ISETUPPROPNAME_DATABASEとISETUPPROPNAME_PATCHの両方を指定することはできません。 2 つのうち 1 つだけを指定できます。
ISETUPPROPNAME_PROPERTIES PROPERTY=VALUE 文字列。 これらは、コマンド ラインに含める PROPERTY=VALUE のペアです。 このオプションは省略可能です。

 

たとえば、次のISETUPPROPNAME_BASEURLとISETUPPROPNAME_DATABASEの値は、次の仮定のパッケージの場所に使用されます。

実際のパッケージの場所 リソースの値
https://www.blueyonderairlines.com/Products/Product1/product1.msi ISETUPPROPNAME_BASEURL = https://www.blueyonderairlines.com/Products/Product1 ISETUPPROPNAME_DATABASE = product1.msi
https://www.blueyonderairlines.com/Products/Product1/product1.msi ISETUPPROPNAME_BASEURL = https://www.blueyonderairlines.com/Products/Product1 ISETUPPROPNAME_DATABASE = ../Products1/product1.msi
e:\product1.msi ISETUPPROPNAME_BASEURLを省略します。 ISETUPPROPNAME_DATABASE = product1.msi
e:\setup\product1.msi (現在実行中のSetup.exeの場所はe:\setup.exe)。
ISETUPPROPNAME_BASEURLを省略します。 ISETUPPROPNAME_DATABASE = Setup\product1.msi

 

コマンド ライン パラメーターのSetup.exe

次の表に、Windows インストーラー開発者向けの Windows SDK コンポーネントに付属するSetup.exeで使用できるコマンド オプションを示します。 コマンド ライン オプションを指定せずに呼び出した場合、Setup.exeは、構成されたリソースで指定された動作に既定で設定されます。 コマンド ライン オプションは相互に排他的であり、一度に使用できるのはそのうちの 1 つだけです。

オプション 使用法 意味
/a /a のsetup.exe 管理インストールを開始します。 ISETUPPROPNAME_DATABASE プロパティが Setup.exe で構成されている場合は、このオプションを使用して、製品の管理インストールを実行できます。 ISETUPPROPNAME_PATCH リソースが構成されている場合、このコマンド ライン オプションはサポートされません。
/a 既存の管理インストール>への /afull< パスのsetup.exe ISETUPPROPNAME_PATCH プロパティが Setup.exe で構成されている場合、このオプションを使用して、製品の既存の管理インストールに修正プログラムを適用できます。 ISETUPPROPNAME_DATABASE リソースが構成されている場合、このコマンド ライン オプションはサポートされません。
/v ファイル>への /vfull< パスをsetup.exeする WinVerifyTrust を使用してファイルの署名を確認します。 このオプションを使用すると、UI は表示されません。 この場合、信頼チェックの結果は、Setup.exeの実行から取得された戻り値になります。
/?   有効な引数を示すヘルプ ダイアログを表示します。 注: 無効な引数が指定されている場合は、ヘルプ ダイアログも表示されます。

 

詳細については、「URL ベースのWindows インストーラーのインストール例」を参照してください