我使用安装盾为我的Windows应用程序创建了安装文件(msi)。问题是当我从控制面板卸载应用程序时,除了2个文件剩余文件已从安装目录中删除。但我希望删除整个安装目录。任何帮助表示赞赏。
答案 0 :(得分:3)
这些文件是由application.It只是bin文件创建的 的WinForms。
Windows安装程序仅在卸载文件时才会自动删除文件,如果之前已安装 。它不会自动删除其他文件,因为它们可能是用户文件。
解决方案是明确告诉Windows Installer在卸载时删除剩余的文件。我无法使用InstallShield告诉您如何使用InstallShield,但我相当确定它有一个功能。例如,WiX工具集具有RemoveFile
元素,该元素将条目写入Window Installer的基础RemoveFile
表。
显式删除目录不是必需的,因为如果目录为空(在删除所有文件之后),Windows安装程序将执行此操作。如果您仍然看到剩下的空目录(您的应用程序可能已创建),则应该有InstallShield的功能,您可以在其中定义要在卸载时删除的目录。例如,WiX工具集具有RemoveFolder
元素,该条目将条目写入Window Installer的基础RemoveFile
表。
答案 1 :(得分:1)
两件事:
在Visual Studio安装项目(不支持RemoveFile功能)中,您需要运行卸载自定义操作以删除这些文件。这可能比您预期的要棘手,因为您需要记住实际的安装文件夹--Windows不会为您执行此操作 - 然后删除* .bin文件。
如果这些是运行应用程序而遗留的临时文件,而您实际上并不需要它们,那么请在标准Temp文件夹中创建它们,因为:
a)程序文件文件夹并非真正用于数据存储,将它们放在Temp中可以解决您的问题。
b)Temp文件夹文件通常由用户清理磁盘,自动清理等定期删除。换句话说,如果你在Temp中留下小文件,没有人真正关心。
答案 2 :(得分:0)
请检查该组件是否共享,是否无缘无故共享。
请将共享设置为否。
仍然没有删除,创建一个自定义操作来删除文件。
有关详细信息,请参阅以下
https://msdn.microsoft.com/en-us/library/windows/desktop/aa371199(v=vs.85).aspx