删除滞留的文件
如果在运行卸载后仍然安装了本应从用户计算机中删除的某个文件,则安装程序可能由于以下一个或多个原因,未删除包含该文件的组件:
msidbComponentAttributesPermanent 位是在 Component 表的 Attributes 列中为该组件设置的。
未在 Component 表的 ComponentId 列中为组件输入任何值。
该组件被仍安装的其他应用程序或功能使用。
在 Condition 表中指定了一个条件,用于在安装期间启用功能,在卸载期间禁用功能。
组件的关键文件在 HKLM\Software\Microsoft\Windows\CurrentVersion\SharedDLLs 下具有以前的引用计数。
组件安装在 System 文件夹中,并且组件中的任何文件在 HKLM\Software\Microsoft\Windows\CurrentVersion\SharedDLLs 下都有以前的引用计数。
Windows Installer 不会删除受 Windows 资源保护 (WRP) 保护的任何文件或注册表项。 有关详细信息,请参阅使用 Windows Installer 和 Windows 资源保护。 在 Windows Server 2003、Windows XP 和 Windows 2000 上,安装程序不会删除受 Windows 文件保护 (WFP) 保护的任何文件。 如果组件的关键路径文件或注册表项受 WFP 或 WRP 保护,则安装程序不会删除该组件。
注意
由于 Windows Installer 不安装、更新或删除受 WRP 保护的任何资源,因此不应在安装包中包含受保护的资源。 请改为仅使用 Windows 资源保护部分所述的受支持的资源替换机制。