SWbemServices.SubclassesOfAsync 方法

SWbemServices 对象的 SubclassesOfAsync 方法返回指定类的子类集合。 仅将此方法用于类对象。

此方法在异步模式下调用。 有关详细信息,请参阅调用方法

有关此语法的说明,请参阅脚本 API 的文档约定

语法

SWbemServices.SubclassesOfAsync( _
  ByVal ObjWbemSink, _
  [ ByVal strSuperclass ], _
  [ ByVal iFlags ], _
  [ ByVal objwbemNamedValueSet ], _
  [ ByVal objWbemAsyncContext ] _
)

parameters

ObjWbemSink

必需。 异步接收子类的对象接收器。 创建 SWbemSink 对象来接收对象。

strSuperclass [optional]

指定父类名。 只有属于此类子类的类才会在枚举器中返回。 如果此参数为空且 iFlags 为 wbemQueryFlagShallow,则只返回顶级类(即没有父类的类)。 如果此参数为空且 iFlags 为 wbemQueryFlagDeep,则返回命名空间中的所有类。

iFlags [optional]

确定调用枚举的深度。 此参数的默认值为 wbemQueryFlagDeep。 此参数可接受以下值。

wbemQueryFlagShallow (1 (0x1))

强制枚举只包含指定父类的直系子类。

wbemQueryFlagDeep (0 (0x0))

此参数的默认值。 此值强制以递归方式枚举所有派生自指定父类的子类。 父类不在枚举中返回。

wbemFlagSendStatus (128 (0x80))

使异步调用将状态更新发送到对象接收器的 OnProgress 事件处理程序。

wbemFlagDontSendStatus (0 (0x0))

防止异步调用将状态更新发送到对象接收器的 OnProgress 事件处理程序。

wbemFlagUseAmendedQualifiers (131072 (0x20000))

使 WMI 返回具有基类定义的类修改数据。 有关详细信息,请参阅本地化 WMI 类信息

objwbemNamedValueSet [optional]

通常,此参数未定义。 如果已定义,此参数是一个 SWbemNamedValueSet 对象,其元素表示可供处理请求的提供程序使用的上下文信息。 支持或需要此类信息的提供程序必须记录已识别的值名称、值数据类型、允许的值和语义。

objWbemAsyncContext [optional]

这是一个 SWbemNamedValueSet 对象,它返回到对象接收器以确定原始异步调用的源。 若要使用同一对象接收器进行多个异步调用,请使用此参数。 若要使用此参数,请创建 SWbemNamedValueSet 对象,并使用 SWbemNamedValueSet.Add 方法添加一个值,该值标识即将进行的异步调用。 此 SWbemNamedValueSet 对象返回到对象接收器,并且调用的源可使用 SWbemNamedValueSet.Item 方法提取。 有关详细信息,请参阅调用方法

返回值

此方法不返回值。 如果成功,接收器将收到每个实例的 OnObjectReady 事件。 在最后一个实例之后,对象接收器会收到 OnCompleted 事件。

错误代码

SubclassesOfAsync 方法完成后,Err 对象可能包含以下列表中的错误代码之一。

注意

返回的集合包含零元素并非错误。

wbemErrAccessDenied - 2147749891 (0x80041003)

当前用户无权查看调用返回的一个或多个类。

wbemErrFailed - 2147749889 (0x80041001)

错误。

wbemErrInvalidClass - 2147749904 (0x80041010)

指定类不存在。

wbemErrInvalidParameter - 2147749896 (0x80041008)

指定的参数无效。

wbemErrOutOfMemory - 2147749894 (0x80041006)

内存不足,无法完成此操作。

备注

立即返回此调用。 请求的对象和状态通过回调返回给调用方,该回调传递到 objWbemSink 中指定的接收器。 要在每个对象到达时对其进行处理,请创建 objWbemSink.OnObjectReady 事件子例程。 返回所有对象后,可在 objWbemSink.OnCompleted 事件的实现中执行最终处理。

通过异步回调,未经身份验证的用户可以向接收器提供数据。 这会给脚本和应用程序带来安全风险。 要消除这些风险,请参阅设置异步调用的安全性

要求

要求
最低受支持的客户端
Windows Vista
最低受支持的服务器
Windows Server 2008
标头
Wbemdisp.h
类型库
Wbemdisp.tlb
DLL
Wbemdisp.dll
CLSID
CLSID_SWbemServices
IID
IID_ISWbemServices

另请参阅

SWbemServices

SWbemObjectSet