Generating Patch Sequence Information (PATCHWIZ.DLL)
Set the SEQUENCE_DATA_GENERATION_DISABLED property to 1 (one) in the Properties Table of the .pcp file to prevent the automatic generation of patch sequencing information. If this property is absent, the information is automatically generated and added.
When the PATCHWIZ.DLL released with Windows Installer 3.0 is used to automatically generate the patch sequencing information, the following occurs:
The values added to the PatchFamily column in the new rows correspond to the target product codes of the target images that are listed in the TargetImages Table.
The values added to the Sequence columns in the new rows are generated using the highest product version targeted by the patch and the UTC time when the patch is generated. The sequence number is
. .<Time Stamp 1>.<Time Stamp 2>.
- The first field is the product version of the highest version of the product that is targeted by the patch.
- The second field is the build major number of the highest version of the product that is targeted by the patch.
The two time stamp fields account for the 32 bit time stamp that is needed to count the seconds in Coordinated Universal Time (UTC).
Product versions have the following format:
. . . and a product with a version number 18.104.22.168 is a higher version than a product with version number 22.214.171.124
The msidbPatchSequenceSupersedeEarlier attribute is entered into the Attribute column of new rows that are generated for service packs (SP) or minor upgrade patches. The msidbPatchSequenceSupersedeEarlier attribute is not added to a QFE or small update patch.
A service pack (SP) should contain the fixes of all the QFEs that were released prior to it. However, if a patch author sets the SEQUENCE_DATA_SUPERSEDENCE property to 0 (zero) or 1 (one) in the .pcp file, the Attributes column of all rows in the MsiPatchSequence table is set to the value that is specified for SEQUENCE_DATA_SUPERSEDENCE. Patch authors who require more control must author the Attributes column manually.
If you include a PatchSequence Table in the .pcp file, the SEQUENCE_DATA_GENERATION_DISABLED property is ignored and the information provided in the PatchSequence Table can be added to the MsiPatchSequence Table of the patch.