Session.EvaluateCondition 方法

Session 对象的 EvaluateCondition 方法计算包含符号和值的逻辑表达式。 此方法使用 MsiEvaluateCondition 函数。

语法

Session.EvaluateCondition(
  condition
)

参数

条件

包含逻辑表达式的必需字符串。 有关详细信息,请参阅条件语句语法

返回值

此方法返回一个整数,指示条件的计算。

常数 “值” 说明
msiEvaluateConditionFalse 0 条件计算为 false。
msiEvaluateConditionTrue 1 条件计算为 true。
msiEvaluateConditionNone 2 不提供条件表达式。
msiEvaluateConditionError 3 条件包含语法错误。

 

备注

条件表达式可用于比较功能和组件状态。 下表显示了 EvaluateCondition 方法使用的功能和组件状态。

状态 说明
Null Null 不对功能或组件执行任何操作。
msiInstallStateAbsent 2 功能或组件不存在。
msiInstallStateLocal 3 功能或组件安装在本地计算机上。
msiInstallStateSource 4 功能或组件安装为从源运行。

 

注意

在直接调用或通过 CostFinalize 操作调用 SetInstallLevel 方法之前不会设置这些状态。 因此,状态检查仅在操作序列表中的条件表达式中有用。

 

要求

要求
版本
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
DLL
Msi.dll
IID
IID_ISession 定义为 000C109E-0000-0000-C000-000000000046

另请参阅

条件语句语法