TargetImages Table (Patchwiz.dll)

The TargetImages table contains information about the target images of the product. A Windows Installer patch package updates a target image into an upgraded image.

A TargetImages table containing at least one record is required in every patch creation database (.pcp file). This table is used by the UiCreatePatchPackage function.

The TargetImages table has the following columns.

MsiPathtext N
SymbolPathstext Y
Upgradedtext N
Orderinteger N
ProductValidateFlagstext Y
IgnoreMissingSrcFilesinteger N




Identifier for a target image. The patch package updates the target image specified in this column to the upgraded image specified in the Upgraded column. There are one or more target images for each upgraded image. The target image must be a fully uncompressed setup image of the product, such as an administrative image or an uncompressed setup image on a CD-ROM. Note that the UiCreatePatchPackageEx function does not generate binary patches for files in cabinets. The value in this field is used with the value in the Upgraded field to generate the names of the transforms that the installer adds to the patch package.


This field specifies the full path, including the file name, to the location of the .msi file for the target image. This is the location of the source files for the target image.


A semicolon delimited list of folders that are to be searched for symbol files that may be used to optimize the generation of the binary patch. Note that the subdirectories of folders specified in this field are not searched. An optimized binary patch may be smaller. Microsoft Visual C++ must be installed on the computer generating the patch and used to create the symbol files. This field is optional, and the installer creates a binary patch even if no symbol files are specified or if the symbol files become unavailable to Patchwiz.dll.


Foreign key to the Upgraded column of the UpgradedImages table. The UiCreatePatchPackageEx function ignores any upgraded image that is not referenced by at least one record of the TargetImages table.


Relative order of the target image. Because multiple targets can be patched to an upgraded image, the Order field provides a means to sequence the transforms in the patch transforms list. Commonly, the order is from oldest to newest image.


The ProductValidateFlags field is used to specify product checking to avoid applying irrelevant transforms. The value entered in this field must be an 8-digit hex integer and one of the valid values for the iValidation parameter of the MsiCreateTransformSummaryInfo function. The default value is 0x00000922 which equals MSITRANSFORM_VALIDATE_UPDATEVERSION + MSITRANSFORM_VALIDATE_NEWEQUALBASEVERSION + MSITRANSFORM_VALIDATE_UPGRADECODE + MSITRANSFORM_VALIDATE_PRODUCT.


If this field is set to a nonzero value, files missing from the target image are ignored by the installer and left unchanged during patching. This enables patches to be made without requiring the entire image; only the changed files of the product and the .msi file are required. This may reduce the time required to generate the patch.

Note  Do not use the IgnoreMissingSrcFiles value with TrustMsi set to 1 in the Properties Table.


This table accepts environment variables as paths beginning with version 4.0 of Patchwiz.dll.