This article was written about products for which Microsoft no longer offers support. Therefore, this article is offered "as is" and will no longer be updated.
The Windows Installer will automatically remove registry entries that are authored into the Registry table when the referenced component is removed, or any registry entry created in the process of registering a COM server using the Class table. However, often times there are registry entries that applications create after the application is installed that must be removed, or registry entries created by a custom action during install. Since these registry key/values are not authored into the Installer .msi package, the Windows Installer cannot automatically remove these entries during maintenance mode or during uninstall. This article describes the best method to have these types of registry entries removed.
To remove the registry entry, you must add a row as follows in the Registry Table of the MSI package.
Entering the "-" for the Name field in the earlier entry in the Registry table removes the entire registry key called: MyComputer\HKEY_CLASSES_ROOT\MyKey when the component Notepad is uninstalled. Also note that instead of leaving the Value field empty, you place a "~" in the field to make it NULL.
Please see the Msi.chm help file available with the Windows Installer SDK or the Platform SDK for more information.