SWbemObject.AssociatorsAsync_ 方法

SWbemObject的 AssociatorsAsync_ 方法 (类或实例) 获取与当前对象关联的对象。 这些对象称为终结点。 此方法执行 ASSOCIATORS OF WQL 查询执行的相同函数。

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

语法

SWbemObject.AssociatorsAsync_( _
  ByVal objWbemSink, _
  [ ByVal strAssocClass ], _
  [ ByVal strResultClass ], _
  [ ByVal strResultRole ], _
  [ ByVal strRole ], _
  [ ByVal bClassesOnly ], _
  [ ByVal bSchemaOnly ], _
  [ ByVal strRequiredAssocQualifier ], _
  [ ByVal strRequiredQualifier ], _
  [ ByVal iFlags ], _
  [ ByVal objwbemNamedValueSet ], _
  [ ByVal objWbemAsyncContext ] _
)

参数

objWbemSink [in]

必需。 以异步方式接收对象的对象接收器作为回调。

strAssocClass [in, 可选]

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

strResultClass [in, 可选]

包含类名的字符串。 如果指定,此参数指示返回的终结点必须属于或派生自此参数中指定的类。

strResultRole [in, 可选]

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

strRole [in, 可选]

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

bClassesOnly [in, 可选]

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

bSchemaOnly [in, 可选]

指示查询是否适用于架构而不是数据的布尔值。 此参数的默认值为 FALSE。 仅当调用此方法的对象是类时,才能将其设置为 TRUE 。 设置为 TRUE 时,返回的终结点集表示与架构中的源类适当关联的类。

strRequiredAssocQualifier [in, optional]

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

strRequiredQualifier [in, 可选]

包含限定符名称的字符串。 如果指定,此参数指示返回的终结点必须包含指定的限定符。

iFlags [in, 可选]

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

wbemFlagSendStatus (128 (0x80) )

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

wbemFlagDontSendStatus (0 (0x0) )

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

wbemFlagUseAmendedQualifiers (131072 (0x20000) )

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

objwbemNamedValueSet [in, 可选]

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

objWbemAsyncContext [in, 可选]

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

返回值

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

错误代码

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

wbemErrAccessDenied - 2147749891 (0x80041003)

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

wbemErrFailed - 2147449889 (0x7FFF7C21)

错误。

wbemErrInvalidParameter - 2147749896 (0x80041008)

指定的参数无效。

wbemErrOutOfMemory - 2147749894 (0x80041006)

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

备注

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

异步回调允许未经身份验证的用户向接收器提供数据。 这会给脚本和应用程序带来安全风险。 若要消除风险,请使用半异步通信或同步通信。 有关详细信息,请参阅 调用方法

有关 ASSOCIATORS OF 关联的 WQL 查询、源实例和终结点的详细信息,请参阅 ASSOCIATORS OF 语句

要求

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

另请参阅

SWbemObject

SWbemServices.AssociatorsOfAsync

SWbemObject.References_

SWbemServices.ReferencesTo