如何在WiX卸载期间删除.NET隔离存储设置文件夹?

时间:2010-05-21 04:33:49

标签: wix windows-installer custom-action wix3

我想在使用My.Settings等时删除.NET应用程序创建的独立存储文件夹。设置文件存储在

等位置
C:\Users\%Username%\AppData\Roaming\App\App.exe_Url_r0q1rvlnrqsgjkcosowa0vckbjarici4

根据这个问题StackOverflow: Removing files when uninstalling Wix我可以使用以下方法卸载文件夹:

<Directory Id="AppDataFolder" Name="AppDataFolder"> 
    <Directory Id="MyAppFolder" Name="My"> 
        <Component Id="MyAppFolder" Guid="YOURGUID-7A34-4085-A8B0-8B7051905B24"> 
            <CreateFolder />
            <RemoveFile Id="PurgeAppFolder" Name="*.*" On="uninstall" /> 
        </Component> 
    </Directory> 
</Directory>

<!-- LocalAppDataFolder-->

这不支持子文件夹等。是唯一的选项是自定义.NET操作还是有更简单的方法来删除这些.NET生成的设置文件夹?

2 个答案:

答案 0 :(得分:3)

是的,如果您在构建时不知道文件夹以完全填写RemoveFile表,那么您必须创建自定义操作。

您可能还会发现WixContrib project很有用。它包含RemoveFolderEx扩展来解决这个问题。正如它所述,代码具有中等生产质量。从来没有尝试过,不过......

答案 1 :(得分:0)

如果有人遇到同样的问题,我使用自定义.NET操作删除文件夹。 WiX文档提供了有关如何创建操作的一个很好的示例。