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 |
|
IID |
IID_ISession 定义为 000C109E-0000-0000-C000-000000000046 |
另请参阅