【问题标题】:Uninstallation condition for WIXWIX的卸载条件
【发布时间】:2014-08-11 22:29:29
【问题描述】:

对于安装,我们有一个属性“Install”,如果它正在进行安装,我们可以在条件中使用它来执行。 卸载是否有类似的属性?

【问题讨论】:

  • 您解决了这个问题吗?

标签: wix installation windows-installer custom-action wix3.7


【解决方案1】:

您可以使用REMOVE~="ALL" 来检测完全卸载


可以通过UPGRADINGPRODUCTCODE property 检测作为主要升级的一部分执行的卸载。


这里有一些进一步的建议和一些帮助资源:这里有一个 "MSI Conditions Cheat Sheet",可帮助您正确获取自定义操作的复杂 MSI 条件。该表对我来说看起来不错,但我没有对其进行详细测试 - 只是将链接与您自己的测试共享作为唯一保证。

此外,您还可以查看 Stefan Kruger 的 msifaq.com 了解常见 MSI 问题列表以及他的主要installsite.org 网站了解一般部署信息。

关于 Wix,请查看 this well known wix tutorial。我也会提供指向Windows Installer Best Practices list 的链接。

How to add a WiX custom action that happens only on uninstall (via MSI)?

【讨论】:

  • 感谢您的精彩解释。已尝试 REMOVE~=ALL,但似乎不起作用。
  • 这是我正在评估的条件 - 已安装或 VCREDIST_INSTALLED 或 REMOVE~="ALL" VCREDIST_INSTALLED 是评估是否已安装 VC++ 重分发器
  • 您必须在引号 msdn.microsoft.com/en-us/library/aa368013(v=vs.85).aspx 中使用 ALL 并记住,如果您的产品具有可以添加和删除的功能,则与添加或删除功能相关的条件可能更有用.
  • 谢谢@PhilDW,我已经得到了报价,但它还没有按预期工作。您所说的与该功能相关的条件是什么意思?如果未安装 VC++,我需要此检查以阻止安装/卸载继续进行
  • VCREDIST_INSTALLED 属性是如何设置的?暂时删除该属性并检查剩余条件是否按预期工作。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-12-16
  • 2015-01-25
  • 2010-11-19
  • 2010-09-16
  • 1970-01-01
  • 2019-09-26
相关资源
最近更新 更多