MSIENFORCEUPGRADECOMPONENTRULES 属性

在命令行或属性表中将 MSIENFORCEUPGRADECOMPONENTRULES 属性设置为 1,可以在对特定产品进行小型更新次要升级期间应用升级组件规则。 若要在计算机上所有产品的小型更新和次要升级期间应用规则,请将 EnforceUpgradeComponentRules 策略设置为 1。

当属性或策略设置为 1 时,小型更新次要升级可能会失败,因为更新尝试执行以下操作,这违反了升级组件规则:

  • 将新功能添加到现有功能树的顶部或中间。

    必须将新功能作为新叶功能添加到现有功能树。

    在这种情况下,可以更改产品的 ProductCode,并且可以将更新视为重大升级

  • 从功能中删除组件。

    如果更改组件的 GUID,也会发生这种情况。 原始 GUID 标识的组件会被删除,新 GUID 标识的组件显示为新组件。

    Windows Installer 4.5 及更高版本:可以使用 Windows Installer 4.5 及更高版本正确删除该组件,方法是在 Component 表中设置 msidbComponentAttributesUninstallOnSupersedence 属性,或设置 MSIUNINSTALLSUPERSEDEDCOMPONENTS 属性。

    也可以更改产品的 ProductCode,并且可以将更新视为重大升级

要求

要求
版本
Windows Server 2012、Windows 8、Windows Server 2008 R2 或 Windows 7 上的 Windows Installer 5.0。 Windows Server 2008 或 Windows Vista 上的 Windows Installer 4.0 或 Windows Installer 4.5。 Windows Server 2003 或 Windows XP 上的 Windows Installer 3.0 或更高版本。 若要了解 Windows Installer 版本所需的最低 Windows Service Pack,请参阅 Windows Installer 运行时要求

请参阅

属性

在 Windows Installer 2.0 及更低版本中不受支持