我有一个应用程序,如果它不存在,则创建一个Log文件夹,并在每次运行应用程序时创建日志文件(每个日期)。 我已经为应用程序创建了一个设置。 卸载应用程序时,Log文件夹仍然包含所有日志文件。 卸载应用程序时有没有办法从文件系统中删除文件夹?
我成功添加了在安装过程中创建的文件夹。如果在此文件夹中没有创建日志文件,则卸载操作也会删除日志文件夹。但是如果里面有文件,则删除操作将删除整个安装,但文件夹中包含其内容仍在文件系统中。 有没有办法在卸载操作期间删除这些文件?
答案 0 :(得分:1)
如果应用程序创建了日志文件,那么Windows Installer对它们一无所知,您必须在需要时将其删除。您已将问题标记为Visual Studio和Windows Installer,因此有两个答案,不知道您使用什么工具来创建MSI文件:
如果您正在使用Visual Studio安装项目,则需要一个卸载自定义项,用于枚举文件夹中的文件并将其删除。这将使Log文件夹在删除时为空,因此它应该消失。
其他Windows Installer工具支持RemoveFiles操作: https://msdn.microsoft.com/en-us/library/aa371201(v=vs.85).aspx
您应该决定升级时要执行的操作。如果要保留这些文件,则自定义操作应具有REMOVE =“ALL”和NOT UPGRADINGPRODUCTCODE条件。