Export (0) Print
Expand All
This topic has not yet been rated - Rate this topic

SWbemObject.SubclassesAsync_ method

The SubclassesAsync_ method of SWbemObject asynchronously supplies the subclasses of the current object, which must be a class.

For an explanation of this syntax, see Document Conventions for the Scripting API.

Syntax

SWbemObject.SubclassesAsync_( _
  ByVal objWbemSink, _
  [ ByVal iFlags ], _
  [ ByVal objWbemNamedValueSet ], _
  [ ByVal objWbemAsyncContext ] _
)

Parameters

objWbemSink [in]

Required. Object sink that receives the objects asynchronously.

iFlags [in, optional]

Determines how detailed the call enumerates. This parameter can accept the following values.

Value (Name/Dec/Hex)Meaning
wbemQueryFlagDeep
0 (0x0)

Forces recursive enumeration into all subclasses derived from the specified parent class. The parent class itself is not returned in the enumeration.

wbemQueryFlagShallow
1 (0x1)

Default for this parameter. It forces the enumeration to include only immediate subclasses of the specified parent class.

wbemFlagSendStatus
128 (0x80)

Causes asynchronous calls to send status updates to the SWbemSink.OnProgress event handler for the object sink.

wbemFlagDontSendStatus
0 (0x0)

Prevents asynchronous calls from sending status updates to the OnProgress event handler for the object sink.

wbemFlagUseAmendedQualifiers
131072 (0x20000)

Causes WMI to return class amendment data with the base class definition. For more information about amended qualifiers, see Localizing WMI Class Information.

 

objWbemNamedValueSet [in, optional]

Typically, this is undefined. Otherwise, this is an SWbemNamedValueSet object whose elements represent the context information that can be used by the provider that is servicing the request. A provider that supports or requires such information must document the recognized value names, data type of the value, allowed values, and semantics.

objWbemAsyncContext [in, optional]

This is an SWbemNamedValueSet object that returns to the object sink to identify the source of the original asynchronous call. Use this parameter when you make multiple asynchronous calls using the same object sink. To use this parameter, create an SWbemNamedValueSet object, and use the SWbemNamedValueSet.Add method to add a value that identifies the asynchronous call you are making. This SWbemNamedValueSet object is returned to the object sink, and the source of the call can be extracted using the SWbemNamedValueSet.Item method. For more information, see Calling a Method.

Return value

This method does not return a value. If successful, the sink receives an OnObjectReady event for each instance. After the last instance, the object sink receives an OnCompleted event.

Error codes

After the completion of the SubclassesAsync_ method, the Err object may contain one of the error codes in the following table.

ErrorMeaning
wbemErrAccessDenied
2147749891 (0x80041003)

Current user does not have permission to view one or more of the classes returned by the call.

wbemErrFailed
2147749889 (0x80041001)

Unspecified error.

wbemErrInvalidClass
2147749904 (0x80041010)

Specified class does not exist.

wbemErrInvalidParameter
2147749896 (0x80041008)

Invalid parameter was specified.

wbemErrOutOfMemory
2147749894 (0x80041006)

Not enough memory to complete the operation.

Remarks

This call returns immediately. The requested objects and status are returned to the caller through callbacks delivered to the sink that is specified in objWbemSink. To process each object when it arrives, create an objWbemSink.OnObjectReady event subroutine. After all the objects are returned, you can perform final processing in your implementation of the objWbemSink.OnCompleted event.

An asynchronous callback allows a non-authenticated user to provide data to the sink. This poses security risks to your scripts and applications. To eliminate the risks, use either semisynchronous communication or synchronous communication. For more information, see Calling a Method.

It is recommended that scripts verify the source of the call by using an objWbemAsyncContext parameter.

It is not an error for the returned collection to have zero elements if there are no subclasses of the current object. The SubclassesAsync_ method only works for class objects.

Examples

For script code examples, see WMI Tasks for Scripts and Applications and the TechNet ScriptCenter Script Repository.

Requirements

Minimum supported client

Windows XP

Minimum supported server

Windows Server 2003

Type library

Wbemdisp.tlb

DLL

Wbemdisp.dll

See also

SWbemObject
SWbemObjectSet
SWbemRefreshableItem

 

 

Did you find this helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2014 Microsoft. All rights reserved.