WIX removefiles和Windows删除注册表项

时间:2014-02-14 07:57:34

标签: windows wix registry uninstall

我一直想知道在卸载过程中,如何控制删除文件的顺序以及Windows通过WIX删除注册表项。

我的程序注册表之一

  

HKEY_LOCAL_MACHINE \ SOFTWARE \微软\的Windows \ CurrentVersion \ Installer程序\的UserData \ S-1-5-18 \产品\ GUID \变换

在删除文件之前删除

。如果则removefiles失败,则卸载过程将中止。但是注册表已被删除,这将是一场灾难。

1 个答案:

答案 0 :(得分:0)

我建议添加一个新的自定义操作,该操作将安排在卸载过程中删除文件后运行,并将根据需要清理注册表。同时,您将需要另一个将安排在安装期间运行的自定义操作,该操作将创建注册表项。因此,您必须从WiX XML中删除注册表定义。

即使是我认为的shell命令,也可以编写自定义操作。否则编写C#自定义操作也是一个不错的选择。

在创建条件时,请不要忘记何时对案例进行自定义操作作为次要/主要升级和修复。摆弄合适的条件可能相当繁琐。但是,所有这些都取决于您的安装方案。