How Wix bootstrapper uninstall msi package that has been upgraded

杀马特。学长 韩版系。学妹 提交于 2019-12-08 14:19:45

问题


I have create a wix bootstrapper which contains 2 msi (A and B) by using Wix 3.8 version and installed into the client machine.

Then I have update the B.msi version to 1.0.0.1 or 1.0.1.0 (because some dlls being updated) and only launch the B.msi install into the same client machine also.

However, when I try to uninstall the wix bootstrapper, it able to uninstall A.msi but the B.msi still at there because it being upgraded.


回答1:


A WiX bundle installs a package manager. (The engine is called "burn".) The package manager tracks which bundles need which versions of which packages. It seems you've updated MSI B to a version above what the bundle needs. So, when uninstalling the bundle, burn finds that B is needed by more that just that bundle so it leaves it.

The immediate solution is to uninstall B yourself.

The long-term solution is to always install A and B with burn. If you update A or B, build an updated bundle. If A or B is needed for another reason, build a different bundle.



来源:https://stackoverflow.com/questions/30322253/how-wix-bootstrapper-uninstall-msi-package-that-has-been-upgraded

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!