为什么卸载msi不会删除注册表和installdir?

时间:2012-06-13 13:47:37

标签: wix windows-installer major-upgrade

我们正在使用wix项目来创建msi。我们试图进行重大升级。

我们确实更改了产品代码和产品版本并创建了新的Msi

在机器中安装了新的msi [已创建注册表项,installdir包含最新文件]。

现在我们在Uninstall注册表项中看到两个产品代码。我认为旧的msi没有正确卸载。

当我们更新产品代码时,它应该自动处理,不是吗?可能是什么原因导致不卸载旧版本?

2 个答案:

答案 0 :(得分:3)

  

当我们更新产品代码时,它应该自动处理,不是吗?

不,更改产品代码不足以导致删除以前的版本。

要实施删除以前版本的升级,请使用wix documentation on the subject中所述的MajorUpgrade元素。

答案 1 :(得分:2)

症状告诉我你没有正确撰写主要升级版。 wxs是什么样的?您的新旧ProductVersion属性是什么样的?

FindRelatedProducts / RemoveExistingProducts没有识别旧的ProductCode,也没有被删除。