我有一个由WiX安装程序安装的程序。
该程序会在[CommonAppDataFolder]\[MyAppName]\目录下创建多个文件,这些文件都有相同的扩展名(假设叫.dat)。
在升级时,我希望能够保留这些文件。
在卸载时,我希望删除这些文件。
我当前是通过以下方式删除这些文件:
<Directory Id='CommonAppDataFolder'>
<Directory Id='MyCommonAppDataFolder' Name='MyAppName'>
<Component Id='RemoveFilesComponent' Guid='71cb0cd8-8459-4a8f-89b7-f00977aa7b70'>
<RemoveFile Id='RemoveFiles' Name='*.dat' On='uninstall'/>
</Component>
</Directory>
</Directory>
我有以下代码来协助升级:
<InstallExecuteSequence>
<RemoveExistingProducts After='InstallInitialize'/>
</InstallExecuteSequence>
现在,当我卸载时,.dat文件会被正确删除。
然而,当我升级时,.dat文件也被删除了。我猜这是因为升级执行了对之前版本的卸载。
我是否正确地解决了这个问题?如何在升级时保留文件,同时在卸载时删除它们?