Removal of Isolated Components
Windows Installer performs the following actions during the removal of an application when the package contains isolated components. Typically, Component_Shared is a DLL that is shared by Component_Application and other client executables.
- Remove the files of Component_Shared from the folder containing Component_Application only if Component_Application is also being removed.
- If the msidbComponentAttributesSharedDllRefCount bit is set in the Component table decrement the SharedDLL refcount.
- Remove the .LOCAL zero-byte file from the folder containing Component_Application.
- Remove Component_Application from the client list of Component_Shared.
- Remove all of the resources of Component_Application as usual.
If there are other products remaining on the client list of Component_Shared:
- Remove no files from the shared location of Component_Shared.
If the SharedDLL refcount for Component_Shared is 0 after being decremented, or if there are no other remaining clients of Component_Shared:
- Remove the files of Component_Shared from the shared location.
- Process all uninstall actions with respect to this component.