MsiTransformView

This temporary table enables the Custom Action Patch Uninstall Option for custom actions added or updated by a patch.

If a patch adds or updates a custom action having the msidbCustomActionTypePatchUninstall attribute, Windows Installer runs the new or updated custom action when the patch is uninstalled. Windows Installer makes the updates within the patch being uninstalled available to the patch uninstall custom action. The patch must include a MsiTransformView*<PatchGUID>* table to provide this information to Windows Installer. The information in this table is available to any immediate custom action, and is unavailable to deferred custom actions.

Windows Installer 4.0 and earlier: Not supported. The Custom Action Patch Uninstall Option is available beginning with Windows Installer 4.5.

This table should be named MsiTransformView*<PatchGUID>* Table, where <PatchGUID> is the GUID that uniquely identifies the patch. The MsiTransformView*<PatchGUID>* Table has the following columns.

Column Type Key Nullable
Table Identifier Y N
Column Text Y N
Row Text Y Y
Data Text N Y
Current Text N Y

 

Column

Table

Name of an altered database table.

Column

Name of an altered table column or INSERT, DELETE, CREATE, or DROP.

Row

A list of the primary key values separated by tabs. Null primary key values are represented by a single space character. A Null value in this column indicates a schema change.

Data

Data, name of a data stream, or a column definition.

Current

Current value from reference database, or column a number.

Remarks

Patch uninstall custom actions run when the patch is uninstalled. They do not run when the product is uninstalled. Use the Custom Action Patch Uninstall Option and this table to run a custom only when the patch is being uninstalled.

A patch can update a custom action provided in the original package (.msi file.) To run the updated version of the custom action when the patch is uninstalled, mark the custom action with the msidbCustomActionTypePatchUninstall attribute in the original package.