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 运行时要求。 |
请参阅