WMI在WMI脚本API中的方法调用的iflags参数中使用了几种类型的常量。
Visual Basic应用程序可以包含脚本API的类型库,Wbemdisp.tlb。脚本无法访问类型库中的常量,除非<参考>或<OBJECT >标记从Windows脚本宿主(WSH)XML文件格式中描述,如使用WMI脚本类型库中所述。否则,脚本必须使用常量的值。
常量
术语 |
描述 |
WbemAuthenticationLevelEnum |
定义安全认证级别。 |
WbemChangeFlagEnum |
定义如何执行对类或实例的写入操作。 |
WbemCimTypeEnum |
定义属性值的有效CIM类型。 |
WbemComparisonFlagEnum |
定义对象比较的设置,并由SWbemObject.CompareTo_使用。 |
WbemConnectOptionsEnum |
定义当与远程机器上的WMI连接失败时,用作对SWbemLocator.ConnectServer方法的调用中的参数的安全标志。 |
WbemErrorEnum |
定义脚本API for WMI调用可能返回的错误。 |
WbemFlagEnum |
定义SWbemServices.ExecQuery,SWbemServices.ExecQueryAsync,SWbemServices.SubclassesOf和SWbemServices.InstancesOf使用的常量。 |
WbemImpersonationLevelEnum |
定义安全模拟级别。这些常数与SWbemSecurity一起使用。 |
WbemObjectTextFormatEnum |
定义SWbemObjectEx.GetText_使用的有效对象文本格式。 |
WbemPrivilegeEnum |
定义特权这些常量与SWbemSecurity一起使用,以授予某些操作所需的权限。 |
WbemQueryFlagEnum |
定义枚举或查询的深度,它确定调用返回的对象数量。 |
WbemTextFlagEnum |
定义生成的对象文本的内容,并由SWbemObject.GetObjectText_使用。 |
WbemTimeout |
定义超时常数。该常数由SWbemEventSource.NextEvent使用。 |
组合标志
您可以组合标志来影响API调用的多个方面。
例如,要创建半同步通话,SWbemServices.ExecQuery_通话中的iFlags参数必须包含两个标志:WbemFlagReturnImmediately和WbemFlagForwardOnly.WbemFlagReturnImmediately的值为16,值为WbemFlagForwardOnly为32。由于常量不能通过名称访问,这些标志的值被组合,产生一个iFlags值为48。
以下脚本示例显示该调用。
在错误恢复下一步
对于GetObject中的每个obj(“WinMgmts:”)。ExecQuery _
(“SELECT * FROM Win32_NTLogEvent WHERE _ LogFile ='Application'”,, 48)
count = count + 1
下一个
不是所有的标志都可以组合,因为许多是相互排斥的,可能会产生不可预测的结果。