【发布时间】:2011-03-06 21:36:25
【问题描述】:
我的应用程序有一个设置文件,当用户卸载应用程序时我需要保留它。我可以使用组件执行此操作,还是需要使用自定义操作?
这是我目前所拥有的(不工作):
<Directory Id="INSTALLLOCATION" Name="_MyApp">
<Component>
<File KeyPath="yes" Source="$(var.Source)\settings.ini" />
</Component>
<Component Id="Backup" Guid="SOME-GUID">
<Condition>REMOVE=ALL</Condition>
<CopyFile Id="settings.ini" Delete="no" SourceProperty="INSTALLLOCATION" DestinationProperty="INSTALLLOCATION" SourceName="settings.ini" DestinationName="settings.ini.bak" />
</Component>
</Directory>
如果重要的话,这些组件属于:
<Feature Id="Default" Level="1">
<ComponentRef Id="settings.ini" />
<ComponentRef Id="Backup" />
</Feature>
我怀疑这不起作用,因为动作 MoveFiles 在 RemoveFiles 之后运行,然后没有任何东西可以移动,所以我从安装程序中删除了 settings.ini 并在安装后手动复制它。我在想这种方式,在 RemoveFiles 之后ini文件仍然存在,它将被重命名。好吧,ini 文件确实在那里,但它没有被重命名。知道为什么吗?
【问题讨论】:
标签: wix uninstallation