InstallShield:卸载时删除已安装的文件

时间:2009-01-14 14:24:22

标签: installshield uninstaller

在安装时,我会复制'System32'文件夹中的一些文件。卸载这些文件时不会删除。为什么呢?

4 个答案:

答案 0 :(得分:5)

MSI安装应该是声明性的而不是程序性的。 您声明应该复制哪些文件,然后由Windows安装程序复制它们。卸载Windows Installer时,知道要删除哪些文件,因为它确实在第一时间安装了它们。

另一方面,如果您在安装过程中手动制作某些内容,例如自己复制文件,Windows Installer就不知道这一点,卸载时删除它们是您的责任。

答案 1 :(得分:2)

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

答案 2 :(得分:0)

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



我正在使用InstallScript,并且某些功能将在卸载时回滚:InstallScript Functions that Are Logged for Uninstallation - 他们提到它也适用于InstallScript或InstallScript MSI项目。

答案 3 :(得分:0)

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

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