检测WDF驱动程序升级

时间:2018-09-24 11:59:50

标签: wix windows-installer

我有一个驱动程序,并使用TAG“ difx:Driver ”使用WiX安装程序进行安装。我的驱动程序已禁用卸载(以避免未经授权的卸载)。

我可以检测到正在升级的驱动程序/或正在升级/卸载的MSI,以便可以抢先卸载驱动程序吗?

1 个答案:

答案 0 :(得分:1)

条件可能很难。我时间不多,恐怕只有一些提示。我觉得这很混乱,但是等一下我会回头。

主要升级 :在重大升级过程中,WiX内置的MSI文件设置以下属性: WIX_UPGRADE_DETECTED (或> WIX_DOWNGRADE_DETECTED 。如果您愿意,这是针对正在安装的新安装程序的版本2。即将卸载的版本1安装程序具有另一个属性集,即MSI标准的 UPGRADINGPRODUCTCODE 。这可能非常令人困惑。

因此得出的结论是,条件 WIX_UPGRADE_DETECTED 在正在运行的较新设置中的主要升级方案中为true 。项目符号:

  • 设置2 WIX_UPGRADE_DETECTED 是正确的。
  • 设置1 UPGRADINGPRODUCTCODE 是正确的-正在被卸载。

卸载 :条件 REMOVE="ALL" 仅在卸载期间为true。

已安装 :条件 Installed 将适用于除全新安装之外的所有安装模式,并且(许多情况令人惊讶)大型升级期间安装程序2(新版本)的安装。主要升级是新产品,因此安装条件为true。新产品尚未安装。对于次要升级,已安装为正确。