WiX/MSI 安装程序成功运行以卸载应用程序,但该应用程序尚未卸载 [英] WiX/MSI installer successfully runs for uninstalling an app but the app has not been uninstalled

查看:46
本文介绍了WiX/MSI 安装程序成功运行以卸载应用程序,但该应用程序尚未卸载的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用这个 Wix 工具集 Visual Studio 2017 扩展 来自其原作者 Rob Mensching.安装程序成功安装了应用程序,但当我再次运行安装程序卸载应用程序时,安装程​​序如预期的那样首先显示修复或卸载应用程序的选项.

I created a Wix Installer for my Visual Studio 2017 project by using this Wix Toolset Visual Studio 2017 Extension from its original author Rob Mensching. The installer successfully installed the app but when I run the installer again to uninstall the app, the installer, as expected, first shows the option of either repairing or uninstalling the app.

当我选择 Uninstall 选项时,它成功运行,表明它正在卸载并最终显示 Finish 按钮,但是当我转到我的 Windows 10 时菜单应用程序仍然存在并且仍然照常运行 - 这显然意味着它没有被卸载.

When I choose Uninstall option it successfully runs indicating it's uninstalling and finally shows the Finish button, but when I go to my Windows 10 menu the app is still there and still works as usual - that clearly means it was not uninstalled.

我什至重新启动了计算机,看看这是否有什么不同,但该应用程序仍然存在并且照常工作.问题:发生这种情况的原因可能是什么 - 补救措施是什么?

I even re-started the computer to see if that makes any difference but the app is still there and working as usual. Question: What could be a cause of it happening - and what is the remedy?

注意:我使用的是最新的 version Wix 3.11

Note: I'm using the latest version 3.11 of Wix

更新

这是一个 VSTO 插件.现在它的工作方式如下:我从 Windows 的 Add\Remove 程序手动卸载它,然后使用 Wix/MSI 再次安装它.然后当我再次使用 Wix/MSI 卸载它时,它成功地卸载了它.问题:为什么最初使用 Wix/MSI 时没有卸载?

It's a VSTO add-in. Now it is working as follows: I manually uninstalled it from Windows' Add\Remove program and then installed it again using Wix/MSI. And then when I uninstalled again using Wix/MSI it successfully uninstalled it. Question: Why initially it was not uninstalling when using Wix/MSI?

推荐答案

Duplicates:您可能在开发产品时安装了多次(至少两次)包裹.这种情况一直发生,特别是如果您使用自动生成的产品代码并且尚未设置主要升级构造或者升级 guid 丢失或更糟的是您将其设置为自动生成.产品系列"的升级代码应保持稳定.基本上所有您不想并行安装的相关版本.

Duplicates: You have probably installed the product several times (at least two) whilst working on the package. This happens all the time, particularly if you use an automatically generated product code and haven't set up a major upgrade construct yet or the upgrade guid is missing or worse yet you set it to auto-generate. Upgrade codes should remain stable for "families" of products. Essentially all related editions that you don't want to install side-by-side.

因此,对于重复安装,产品的卸载只会删除最新的安装,将文件留在原处,因为引用计数不为零,因为还有其他安装.解决方案是保持稳定的升级 guid 并设置主要升级结构.在此之前卸载所有杂散副本.

So with duplicated installations, the uninstall of the product only removes the latest installation, leaving the files in place since the reference count is not zero as there are other installations. The solution is to keep a stable upgrade guid and set up a major upgrade construct. Before that uninstall all stray copies.

也许试试这个程序:

  • Windows 键 + 点击 R
  • 输入 appwiz.cpl 并按 Enter
  • Windows Key + tap R
  • Type appwiz.cpl and press Enter

在列表中查找产品的重复副本并卸载它们.

Look for duplicate copies of the product in the list and uninstall them.

隐藏产品:也有可能从上面的列表中隐藏了一些副本.

Hidden Products: It is also possible that some copies could be hidden from the above list.

这篇关于WiX/MSI 安装程序成功运行以卸载应用程序,但该应用程序尚未卸载的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆