How To Remove a Registry Entry Using the Windows Installer (243161)



The information in this article applies to:

  • Microsoft Windows Installer 1.0
  • Microsoft Windows Installer 1.1

This article was previously published under Q243161

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.

Modification Type:MinorLast Reviewed:7/1/2004
Keywords:kbAppSetup kbhowto KB243161