TargetImages テーブルには、製品のターゲット イメージに関する情報が含まれています。 Windows インストーラーのパッチ パッケージは、アップグレードされたイメージにターゲット イメージを更新します。
パッチ作成データベース (.pcp ファイル) ごとに、少なくとも 1 つのレコードを含む TargetImages テーブルが必要です。 このテーブルは、UiCreatePatchPackage 関数によって使用されます。
TargetImages テーブルには、次の列があります。
| コラム | 種類 | 鍵 | 許容 |
|---|---|---|---|
| ターゲット | テキスト | Y | N |
| MsiPath | テキスト | N | |
| SymbolPaths | テキスト | Y | |
| アップグレード | テキスト | N | |
| 命令 | 整数 | N | |
| ProductValidateFlags | テキスト | Y | |
| IgnoreMissingSrcFiles | 整数 | N |
列
-
ターゲット
-
ターゲット イメージの識別子。 パッチ パッケージは、この列で指定されたターゲット イメージを、アップグレードされた列で指定されたアップグレード済みイメージに更新します。 アップグレードされたイメージごとに 1 つ以上のターゲット イメージがあります。 ターゲット イメージは、CD-ROM 上の管理イメージや圧縮されていないセットアップ イメージなど、製品の完全に圧縮されていないセットアップ イメージである必要があります。 UiCreatePatchPackageEx 関数は、キャビネット内のファイルのバイナリ パッチを生成しないことに注意してください。 このフィールドの値は、[アップグレード済み] フィールドの値と共に使用され、インストーラーによってパッチ パッケージに追加される変換の名前が生成されます。
-
MsiPath
-
このフィールドは、ファイル名を含む、ターゲット イメージの .msi ファイルの場所への完全なパスを指定します。 これは、ターゲット イメージのソース ファイルの場所です。
-
SymbolPaths
-
バイナリ パッチの生成を最適化するために使用できるシンボル ファイルを検索するフォルダーのセミコロン区切りのリスト。 このフィールドで指定されたフォルダーのサブディレクトリは検索されないことに注意してください。 最適化されたバイナリ パッチは小さい場合があります。 Microsoft Visual C++ は、パッチを生成するコンピューターにインストールし、シンボル ファイルの作成に使用する必要があります。 このフィールドは省略可能であり、シンボル ファイルが指定されていない場合やシンボル ファイルが Patchwiz.dllで使用できなくなった場合でも、インストーラーによってバイナリ パッチが作成されます。
-
アップグレード
-
UpgradedImages テーブルのアップグレード済み列への外部キー。 UiCreatePatchPackageEx 関数は、TargetImages テーブルの少なくとも 1 つのレコードによって参照されていないアップグレードされたイメージを無視します。
-
順序
-
ターゲット イメージの相対順序。 アップグレードされたイメージに複数のターゲットにパッチを適用できるため、[順序] フィールドには、パッチ変換リスト内の変換をシーケンス処理する手段が用意されています。 通常、順序は最も古いものから最新の画像までです。
-
ProductValidateFlags
-
ProductValidateFlags フィールドは、無関係な変換を適用しないように製品チェックを指定するために使用されます。 このフィールドに入力する値は、8 桁の 16 進整数で、MsiCreateTransformSummaryInfo 関数の iValidation パラメーターの有効な値のいずれかである必要があります。 既定値は、MSITRANSFORM_VALIDATE_UPDATEVERSION + MSITRANSFORM_VALIDATE_NEWEQUALBASEVERSION + MSITRANSFORM_VALIDATE_UPGRADECODE + MSITRANSFORM_VALIDATE_PRODUCTと等しい0x00000922です。
-
IgnoreMissingSrcFiles
-
このフィールドが 0 以外の値に設定されている場合、ターゲット イメージに含まれていないファイルはインストーラーによって無視され、修正プログラムの適用中は変更されません。 これにより、イメージ全体を必要とせずにパッチを作成できます。製品の変更されたファイルと .msi ファイルのみが必要です。 これにより、パッチの生成に必要な時間が短縮される場合があります。
手記
プロパティ テーブルで TrustMsi を 1 に設定した IgnoreMissingSrcFiles 値は使用しないでください。
備考
次の表は、Patchwiz.dllのバージョン 4.0 以降のパスとして環境変数を受け入れます。