WiX安装程序在卸载时删除文件,但在升级时不删除

Mat*_*ing 12 windows-installer wix uninstall upgrade delete-file

我有一个安装了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>
Run Code Online (Sandbox Code Playgroud)

我有这个促进升级:

<InstallExecuteSequence>
  <RemoveExistingProducts After='InstallInitialize'/>
</InstallExecuteSequence>
Run Code Online (Sandbox Code Playgroud)

现在,当我卸载时,正确删除.dat文件.
但是,当我升级时,.dat文件也会被删除.我想因为升级是在先前版本上执行卸载.

我正确地解决了这个问题吗?如何在升级时保留文件,同时在卸载时删除它们?

Rob*_*ing 1

一种选择是切换到小更新。这有很多限制,因此并不像听起来那么容易。