Wix - 如何在卸载期间仅删除应用程序根目录

时间:2012-07-12 19:12:13

标签: wix

使用Wix 3.5,有没有办法限制卸载期间删除的目录?以下是我正在使用的结构:

<Directory Id="TARGETDIR" Name="SourceDir">
      <Directory Id="CommonAppDataFolder" Name="CommonAppDataFolder">
        <Directory Id="CommonAppDataSubFolder1" Name="SubFolder1">
          <Directory Id="CommonAppDataSubFolder2" Name="SubFolder2">
            <Directory Id="CommonAppDataSubFolder3" Name="SubFolder3">
              <Directory Id="APPLICATIONROOTDIRECTORY" Name="My_App">
              </Directory>
            </Directory>
          </Directory>
        </Directory>
      </Directory>
</Directory>

在卸载过程中,我只想删除“APPLICATIONROOTDIRECTORY”。我的应用程序是另一个供应商的父应用程序的插件。 Addon开发人员应该安装到特定目录,但不能在卸载期间删除整个文件夹结构。我想保留子文件夹1到3。

谢谢,

杰夫

1 个答案:

答案 0 :(得分:1)

如果这些目录不为空,WiX将不会删除这些目录。

更新: 在您的情况下,如果目录为空并且您希望将它们保留为卸载,我建议从安装程序中删除目录结构。而是使用自定义操作来设置包含安装目录的属性,然后安装到该目录。我认为这可行(但尚未测试)。