1

在安装时,我将一些文件复制到“System32”文件夹中。卸载时这些文件不会被删除。为什么?

4

4 回答 4

5

MSI 安装应该是声明性的而不是程序性的。您声明应该复制哪些文件,它们会被 Windows 安装程序复制。卸载 Windows Installer 时知道要删除哪些文件,因为它,因为他确实首先安装了它们。

另一方面,如果您在安装过程中进行手动操作,例如自己复制文件,Windows Installer 不知道这一点,您有责任在卸载时删除它们。

于 2009-01-14T15:19:28.187 回答
2

文件所属的组件可能是永久的吗?另请注意,除非必须,否则应避免将文件安装到 System32。

于 2009-01-14T15:11:52.600 回答
0

文件是如何手动到达该文件夹的?如果是这样,它们将不会被删除,请参阅http://kb.acresso.com/selfservice/viewContent.do?externalID=Q100225



我正在使用 InstallScript,并且某些功能会在卸载时回滚:为卸载而记录的 InstallScript 功能- 他们在那里提到它也适用于 InstallScript 或 InstallScript MSI 项目。

于 2009-01-14T14:31:16.097 回答
0

这是基于 MSI 的安装还是 installscript?如果是 MSI,也许详细的日志会提供更多的洞察力?另外(您可能检查过),但请确保这些文件未标记为永久。

另外,这是动态链接文件还是静态文件?由于基于 msi 的安装程序缺少密钥文件,我有时会遇到动态问题。您可以尝试使文件静态链接。

于 2009-01-14T14:51:07.400 回答