BeginEnumeration 函数

将枚举器重置回枚举的开头。

注意

此 API 仅供内部使用。 不应从开发人员代码中使用。

语法

HRESULT BeginEnumeration (
   [in] int               vFunc,
   [in] IWbemClassObject* ptr,
   [in] LONG              lEnumFlags
);

参数

vFunc
[in] 未使用此参数。

ptr
[in] 指向 IWbemClassObject 实例的指针。

lEnumFlags
[in] 注解部分中描述的标志或值的按位组合,该组合控制枚举中包含的属性。

返回值

此函数返回的以下值是在 WbemCli.h 头文件中定义的,你也可以在代码中将这些值定义为常数:

常数 Value 说明
WBEM_E_INVALID_PARAMETER 0x80041008 lEnumFlags 中的标志组合无效,或者指定的参数无效。
WBEM_E_UNEXPECTED 0x8004101d BeginEnumeration 的第二次调用是在没有对 EndEnumeration 的干预调用的情况下进行。
WBEM_E_OUT_OF_MEMORY 0x80041006 内存不足,无法开始新的枚举。
WBEM_S_NO_ERROR 0 函数调用成功。

注解

此函数包装对 IWbemClassObject::BeginEnumeration 方法的调用。

可以作为 lEnumFlags 参数传递的标志是在 WbemCli.h 头文件中定义的,你也可以在代码中将这些标志定义为常数。 可以将每个组中的一个标志与任何其他组的任何标志组合在一起。 但是,同一组中的标志互斥。

组 1

常数 Value 说明
WBEM_FLAG_KEYS_ONLY 0x4 包括仅用于构成密钥的属性。
WBEM_FLAG_REFS_ONLY 0x8 包括仅为对象引用的属性。

组 2

常数 Value 说明
WBEM_FLAG_SYSTEM_ONLY 0x30 将枚举限制为仅系统属性。
WBEM_FLAG_NONSYSTEM_ONLY 0x40 包括本地和传播属性,但不包括枚举中的系统属性。

对于类:

常数 Value 说明
WBEM_FLAG_CLASS_OVERRIDES_ONLY 0x100 将枚举限制为在类定义中重写的属性。
WBEM_FLAG_CLASS_LOCAL_AND_OVERRIDES 0x100 将枚举限制为在当前类定义中重写的属性和在该类中定义的新属性。
WBEM_MASK_CLASS_CONDITION 0x300 针对 lEnumFlags 值应用的掩码(而非标志),用于检查是否设置了 WBEM_FLAG_CLASS_OVERRIDES_ONLYWBEM_FLAG_CLASS_LOCAL_AND_OVERRIDES
WBEM_FLAG_LOCAL_ONLY 0x10 将枚举限制为在类本身中定义或修改的属性。
WBEM_FLAG_PROPAGATED_ONLY 0x20 将枚举限制为从基类继承的属性。

对于实例:

常数 Value 说明
WBEM_FLAG_LOCAL_ONLY 0x10 将枚举限制为在类本身中定义或修改的属性。
WBEM_FLAG_PROPAGATED_ONLY 0x20 将枚举限制为从基类继承的属性。

要求

平台:请参阅系统要求

标头:WMINet_Utils.idl

.NET Framework 版本:自 4.7.2 起可用

另请参阅