TargetImages テーブル (Patchwiz.dll)

TargetImages テーブルには、製品のターゲット イメージに関する情報が含まれています。 Windows インストーラーのパッチ パッケージは、ターゲット イメージをアップグレードされたイメージに更新します。

すべてのパッチ作成データベース (.pcp ファイル) には、少なくとも 1 つのレコードを含む TargetImages テーブルが必要です。 このテーブルは、UiCreatePatchPackage 関数によって使用されます。

TargetImages テーブルには次の列があります。

Column 種類 キー Nullable
移行先 text Y N
MsiPath text   N
SymbolPaths text   Y
Upgraded text   N
注文 整数 (integer)   N
ProductValidateFlags text   Y
IgnoreMissingSrcFiles 整数 (integer)   N

 

[列]

Target

ターゲット イメージの識別子。 パッチ パッケージは、この列で指定したターゲット イメージを、Upgraded 列で指定したアップグレード イメージに更新します。 各アップグレード イメージに対して、1 つ以上のターゲット イメージがあります。 ターゲット イメージは、管理イメージや CD-ROM 上の非圧縮セットアップ イメージなど、製品の完全に展開されたセットアップ イメージである必要があります。 UiCreatePatchPackageEx 関数では、キャビネット内のファイルに対するバイナリ パッチは生成されないことに注意してください。 このフィールドの値を Upgraded フィールドの値と共に使って、インストーラーがパッチ パッケージに追加する変換の名前を生成します。

MsiPath

このフィールドは、ターゲット イメージの .msi ファイルの場所の完全パス (ファイル名を含む) を指定します。 これは、ターゲット イメージのソース ファイルの場所です。

SymbolPaths

バイナリ パッチの生成を最適化するために使用できるシンボル ファイルの検索対象となるフォルダーをまとめたセミコロン区切りのリストです。 このフィールドで指定したフォルダーのサブディレクトリは検索対象とならないことに注意してください。 バイナリ パッチを最適化すると、小さくすることができる場合があります。 Microsoft Visual C++ は、パッチを生成するコンピューターにインストールし、シンボル ファイルの作成に使用する必要があります。 このフィールドは省略可能です。シンボル ファイルが指定されていない場合や、Patchwiz.dll でシンボル ファイルが利用できない場合でも、バイナリ パッチは作成されます。

Upgraded

UpgradedImages テーブルの Upgraded 列の外部キー。 UiCreatePatchPackageEx 関数は、TargetImages テーブルの少なくとも 1 つのレコードによって参照されていないアップグレード イメージを無視します。

Order

ターゲット イメージの相対的な順序。 アップグレード イメージに複数のターゲットのパッチを適用できるため、Order フィールドには、パッチ変換一覧内の変換を順序付ける手段が用意されています。 通常は、古いイメージから新しいイメージの順です。

ProductValidateFlags

ProductValidateFlags フィールドは、無関係な変換を適用しないための製品チェックを指定するために使います。 このフィールドに入力する値は、8 桁の 16 進数の整数であり、MsiCreateTransformSummaryInfo 関数の iValidation パラメーターの有効値の 1 つである必要があります。 既定値は 0x00000922 です。これは MSITRANSFORM_VALIDATE_UPDATEVERSION + MSITRANSFORM_VALIDATE_NEWEQUALBASEVERSION + MSITRANSFORM_VALIDATE_UPGRADECODE + MSITRANSFORM_VALIDATE_PRODUCT と同じです。

IgnoreMissingSrcFiles

このフィールドが 0 以外の値に設定されている場合、ターゲット イメージにないファイルはインストーラーによって無視され、パッチの適用時に変更されないままになります。 これにより、イメージ全体を必要とせず、変更された製品ファイルと .msi ファイルのみを必要とするパッチが作成されます。 これにより、パッチの生成に必要な時間を短縮できる場合があります。

Note

Properties テーブルの TrustMsi を 1 に設定して IgnoreMissingSrcFiles 値を使わないでください。

 

解説

このテーブルには、Patchwiz.dll のバージョン 4.0 以降の環境変数がパスとして指定できます。