勇芳软件工作室.汉化:  Windows Management Instrumentation > Scripting API for WMI > Scripting API Objects > SWbemObject >

AssociatorsAsync_ Method

Previous pageReturn to chapter overviewNext page

描述

 

AssociatorsAsync_AssociatorsAsync_方法获取与当前对象关联的对象(类或实例)。这些对象称为端点。此方法执行与WQL查询的ASSOCIATORS执行的功能相同的功能。

 

PowerBASIC 语法

 

METHOD AssociatorsAsync_ ( _

BYVAL objWbemSink AS IDispatch, _

OPTIONAL BYVAL strAssocClass AS WSTRING, _

OPTIONAL BYVAL strResultClass AS WSTRING, _

OPTIONAL BYVAL strResultRole AS WSTRING, _

OPTIONAL BYVAL strRole AS WSTRING, _

OPTIONAL BYVAL bClassesOnly AS INTEGER, _

OPTIONAL BYVAL bSchemaOnly AS INTEGER, _

OPTIONAL BYVAL strRequiredAssocQualifier AS WSTRING, _

OPTIONAL BYVAL strRequiredQualifier AS WSTRING, _

OPTIONAL BYVAL iFlags AS LONG, _

OPTIONAL BYVAL objWbemNamedValueSet AS IDispatch, _

OPTIONAL BYVAL objWbemAsyncContext AS IDispatch _

)

 

参数

 

objWbemSink

 

需要。作为回调异步接收对象的对象接收器。

 

strAssocClass

 

包含关联类的字符串。如果指定,则此参数指示返回的端点必须通过指定的关联类或从此关联类派生的类与源相关联。

 

strResultClass

 

包含类名的字符串。如果指定了此参数,则该参数表示返回的端点必须属于或从此参数中指定的类派生。

 

strResultRole

 

包含属性名称的字符串。如果指定,则该参数指示返回的端点必须在与源对象的关联中发挥特定的作用。角色由关联的指定属性(必须是引用属性)的名称定义。

 

strRole

 

包含属性名称的字符串。如果指定,则该参数指示返回的端点必须参与与源对象扮演特定角色的源对象的关联。角色由关联的指定属性(必须是引用属性)的名称定义。

 

bClassesOnly

 

指示是否应返回类名称列表的布尔值,而不是类的实际实例。这些是端点实例所属的类。该参数的默认值为FALSE。

 

bSchemaOnly

 

这是一个布尔值,指示查询是应用于模式而不是数据。该参数的默认值为FALSE。如果调用此方法的对象是一个类,它只能设置为TRUE。当设置为TRUE时,返回的端点集合表示与模式中的源类适当关联的类。

 

strRequiredAssocQualifier

 

包含限定符名称的字符串。此参数(如果指定)指示返回的端点必须通过包含指定限定符的关联类与源对象关联。

 

strRequiredQualifier

 

包含限定符名称的字符串。此参数(如果指定)指示返回的端点必须包含指定的限定符。

 

iFlags

 

整数指定操作的附加标志。此参数可以接受以下值。

 

含义

wbemFlagSendStatus

128

&H80

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

wbemFlagDontSendStatus

0

&H0

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

wbemFlagUseAmendedQualifiers

131072

&H20000

导致WMI返回本地化的类和属性描述。有关详细信息,请参阅本地化WMI类信息.

 

objWbemNamedValueSet

 

通常,这是未定义的。否则,这是一个SWbemNamedValueSet对象,其元素表示正在为请求提供服务的提供商可以使用的上下文信息。支持或要求此类信息的提供者必须记录识别的值名称,值的数据类型,允许的值和语义。

 

objWbemAsyncContext

 

这是一个SWbemNamedValueSet对象,返回到对象接收器,以识别原始异步调用的源。如果使用相同的对象接收器进行多个异步调用,请使用此参数。要使用此参数,请创建一个SWbemNamedValueSet对象,并使用SWbemNamedValueSet.Add方法添加一个标识您正在进行的异步调用的值。此SWbemNamedValueSet对象返回到对象接收器,并且可以使用SWbemNamedValueSet项目方法提取调用的源。有关详细信息,请参阅调用方法.

 

返回值

 

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

 

OBJRESULT

 

错误(名称/十进制/十六进制)

含义

wbemErrAccessDenied

-2147217405

&H80041003

当前用户没有权限查看通话返回的一个或多个类。

wbemErrFailed

-2147217407

&H80041001

未指定错误

wbemErrInvalidParameter

-2147217400

&H80041008

指定了无效参数。

wbemErrOutOfMemory

-2147217402

&H80041006

没有足够的内存来完成操作。

 

备注

 

此通话立即返回。所请求的对象和状态通过回送到主机,返回给objWbemSink中指定的接收器。要处理每个对象到达时,创建OnObjectReadyOnObjectReady事件子例程。返回所有对象后,您可以在执行objWbemSink.OnCompleted事件时执行最终处理。

 

异步回调允许非验证用户向sink提供数据。这对您的脚本和应用程序造成安全隐患。为了消除风险,请使用半异步通信或同步通信。有关详细信息,请参阅调用方法.

 

有关相关WQL查询,源实例和端点的ASSOCIATORS的更多信息,请参阅ASSOCIATORS OF Statement。

 

要求

 

客户

需要Windows Vista,Windows XP,Windows 2000 Professional,Windows NT Workstation 4.0 SP4及更高版本,Windows Me,Windows 98或Windows 95 OSR2及更高版本。

服务器

需要Windows Server 2008,Windows Server 2003,Windows 2000 Server或Windows NT Server 4.0 SP4及更高版本。

类型库

使用Wbemdisp.tlb。

Wbemdisp.inc。

DLL

需要Wbemdisp.dll。