You are currently offline, waiting for your internet to reconnect

How To Remove a Registry Entry Using the Windows Installer

Retired KB Content Disclaimer
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.
Summary
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.
More information
To remove the registry entry, you must add a row as follows in the Registry Table of the MSI package.

RegistryRootKeyNameValueComponent
MyKey1MyKey-~Notepad

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.
References
Please see the Msi.chm help file available with the Windows Installer SDK or the Platform SDK for more information.
VSI Installer MSI
Properties

Article ID: 243161 - Last Review: 06/19/2014 06:19:00 - Revision: 3.0

  • kbappsetup kbhowto KB243161
Feedback