编写 API 常量脚本

WMI 在 脚本 API for WMI方法调用的参数时, 使用多种常量。

Visual Basic 应用程序可以包含脚本 API 的类型库 Wbemdisp.tlb。 脚本无法访问类型库中的常量,除非它们使用 <REFERENCE> 或 <OBJECT> 标记,如 使用 WMI 脚本类型库中所述。 否则,脚本必须使用常量的值。

常数

WbemAuthenticationLevelEnum

定义安全身份验证级别。

WbemChangeFlagEnum

定义如何对类或实例执行写入作。

WbemCimTypeEnum

定义属性值的有效 CIM 类型。

WbemComparisonFlagEnum

定义对象比较的设置,由 SWbemObject.CompareTo_使用。

WbemConnectOptionsEnum

定义在远程计算机上的 WMI 连接失败时,在调用 SWbemLocator.ConnectServer 方法时用作参数的安全标志。

WbemErrorEnum

为 WMI 调用定义 脚本 API 可能返回的错误。

WbemFlagEnum

定义由 SWbemServices.ExecQuerySWbemServices.ExecQueryAsyncSWbemServices.SubclassesOfSWbemServices.InstancesOf使用的常量。

WbemImpersonationLevelEnum

定义安全模拟级别。 这些常量用于 SWbemSecurity

WbemObjectTextFormatEnum

定义 SWbemObjectEx.GetText_要使用的有效对象文本格式。

WbemPrivilegeEnum

定义权限。 这些常量与 SWbemSecurity 一起使用,以授予某些作所需的权限。

WbemQueryFlagEnum

定义枚举或查询的深度,该深度确定调用返回的对象数。

WbemTextFlagEnum

定义生成的对象文本的内容,由 SWbemObject.GetObjectText_使用。

WbemTimeout

定义超时常量。 SWbemEventSource.NextEvent使用此常量。

组合标志

可以将标志组合在一起,以影响 API 调用的多个方面。

例如,若要创建 半异步 调用,SWbemServices.ExecQuery_ 调用中的 iFlags 参数必须包含两个标志:WbemFlagReturnImmediatelyWbemFlagForwardOnlyWbemFlagReturnImmediately 的值为 16,WbemFlagForwardOnly 的值为 32。 由于无法按名称访问常量,因此这些标志的值将组合在一起,生成 iFlags 值为 48。

以下脚本示例演示调用。

On Error Resume Next
For Each obj in GetObject("WinMgmts:").ExecQuery _
("SELECT * FROM Win32_NTLogEvent WHERE _ LogFile='Application'",,48)
    count  = count + 1
Next

并非所有标志都可以组合在一起,因为许多标志都是相互排斥的,并且可能会产生不可预知的结果。

适用于 WMI 脚本 API