Windows installer cannot reinstall components that are removed because of the RemoveExistingProducts action (870714)
The information in this article applies to:
- Microsoft Windows Installer 1.1
- Microsoft Windows Installer 1.2
- Microsoft Windows Installer 2.0
SYMPTOMSWhen you reinstall your application that contains isolated
components and the RemoveExistingProducts action is set in Microsoft Windows Installer, the
files that are removed by the RemoveExistingProducts action are not installed.
CAUSEThis behavior occurs because of the peculiarity of the
IsolateComponents action. Whenever the key file of the shared component exists on the computer, Windows Installer skips the installation of
that particular component. However, Windows Installer will still install the isolated component. This behavior occurs because Windows Installer does not overwrite a shared file because the
isolated local copy of the file is used by the installed EXE.RESOLUTIONTo resolve this problem, use one of the following methods:
- Schedule the RemoveExistingProducts action to run after
the ProcessComponents action of the updating installation. This fixes the problem
because the updating installation will register itself as a client of the shared components. Therefore, the files cannot be uninstalled by the
RemoveExistingProducts action.
- Create a custom setup that calls a repair after the
installation has completed.
- Remove the application, and then install it.
STATUS This
behavior is by design.MORE INFORMATIONWindows InstallerWindows Installer is an installation and configuration service
that reduces the total cost of ownership. Windows Installer is included with
Microsoft Windows Server 2003, Windows XP, Windows 2000, and Windows
Millennium Edition. Windows Installer is also provided as a service
pack to Windows NT version 4.0, Windows 98, and Windows 95.
With Windows
Installer, users can better address the corporate deployment and provide
a standard format for the component management. The installer supports
advertisement of applications and features according to the operating system
settings. IsolateComponentsThe IsolateComponents action installs a copy of a component such as a shared DLL in a private location for use by a specific
application. A specific application is typically an EXE. This isolates the application from other copies
of the component that may be installed to a shared location on the
computer.ProcessComponentsThe ProcessComponents action registers and unregisters the
components, their key paths, and the component clients.REFERENCESFor additional information, visit the following Microsoft
Developer Network (MSDN) Web sites:
Modification Type: | Major | Last Reviewed: | 7/29/2004 |
---|
Keywords: | kbRepair kbDLL kbsetup kbDeployment kbAppSetup kbtshoot kbprb KB870714 kbAudDeveloper |
---|
|