Compartir a través de


Método SWbemObject.SubclassesAsync_

El método SubclassesAsync\_ de SWbemObject proporciona asincrónicamente las subclases del objeto actual, el cual debe ser una clase.

Para obtener una explicación de esta sintaxis, consulte Convenciones de documentación para la API de scripting.

Sintaxis

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

Parámetros

objWbemSink [en]

Necesario. Receptor de objetos que recibe los objetos de forma asincrónica.

iFlags [entrada, opcional]

Determina cómo se enumera la llamada detallada. Este parámetro puede aceptar los valores siguientes.

wbemQueryFlagDeep (0 (0x0))

Fuerza la enumeración recursiva en todas las subclases derivadas de la clase primaria especificada. La clase principal misma no se devuelve en la enumeración.

wbemQueryFlagShallow (1 (0x1))

Valor predeterminado de este parámetro. Obliga a la enumeración a incluir solo subclases inmediatas de la clase principal especificada.

wbemFlagSendStatus (128 (0x80))

Hace que las llamadas asincrónicas envíen actualizaciones de estado al controlador de eventos SWbemSink.OnProgress para el receptor de objetos.

wbemFlagDontSendStatus (0 (0x0))

Impide que las llamadas asincrónicas envíen actualizaciones de estado al controlador de eventos OnProgress para el receptor de objetos.

wbemFlagUseAmendedQualifiers (131072 (0x20000))

Hace que WMI devuelva datos de modificación de clase con la definición de clase base. Para obtener más información sobre los calificadores modificados, consulte Localizar información de clase WMI.

objWbemNamedValueSet [entrada, opcional]

Normalmente, esto no está definido. De lo contrario, se trata de un objeto SWbemNamedValueSet cuyos elementos representan la información de contexto que puede usar el proveedor que atiende la solicitud. Un proveedor que admita o necesite esa información debe documentar los nombres de valor reconocidos, el tipo de datos del valor, los valores permitidos y la semántica.

objWbemAsyncContext [entrada, opcional]

Se trata de un objeto SWbemNamedValueSet que se devuelve al receptor del objeto para identificar el origen de la llamada asincrónica original. Use este parámetro cuando realice varias llamadas asincrónicas con el mismo receptor de objetos. Para usar este parámetro, cree un objeto SWbemNamedValueSet y use el método SWbemNamedValueSet.Add para agregar un valor que identifique la llamada asincrónica que realiza. Este objeto SWbemNamedValueSet se devuelve al receptor del objeto y el origen de la llamada se puede extraer mediante el método SWbemNamedValueSet.Item. Para más información, vea Llamada a un método.

Valor devuelto

Este método no devuelve ningún valor. Si se ejecuta correctamente, el receptor recibe un evento OnObjectReady para cada instancia. Después de la última instancia, el receptor del objeto recibe un evento OnCompleted.

Códigos de error

Después de completar el método SubclassesAsync_, el objeto Err puede contener uno de los códigos de error de la lista siguiente.

wbemErrAccessDenied - 2147749891 (0x80041003)

El usuario no tiene permiso para ver una o varias de las clases devueltas por la llamada.

wbemErrFailed: 2147749889 (0x80041001)

Error no especificado.

wbemErrInvalidClass: 2147749904 (0x80041010)

La clase especificada no existe.

wbemErrInvalidParameter - 2147749896 (0x80041008)

Se ha especificado un parámetro no válido.

wbemErrOutOfMemory: 2147749894 (0x80041006)

No hay suficiente memoria para completar la operación.

Comentarios

Esta llamada devuelve inmediatamente. Los objetos y el estado solicitados se devuelven al autor de la llamada mediante devoluciones de llamada entregadas al receptor especificado en objWbemSink. Para procesar cada objeto cuando llegue, cree una subrutina de eventos objWbemSink.OnObjectReady. Una vez que se devuelven todos los objetos, puede realizar el procesamiento final en la implementación del evento objWbemSink.OnCompleted.

Una devolución de llamada asincrónica permite a un usuario no autenticado proporcionar datos al receptor. Esto supone riesgos de seguridad para los scripts y las aplicaciones. Para eliminar los riesgos, use comunicación semisincrónica o sincrónica. Para más información, consulte Llamada a un método.

Se recomienda que los scripts comprueben el origen de la llamada mediante un parámetro objWbemAsyncContext.

No es un error para la colección devuelta tener cero elementos si no hay subclases del objeto actual. El método SubclassesAsync_ solo funciona para objetos de clase.

Requisitos

Requisito Value
Cliente mínimo compatible
Windows Vista
Servidor mínimo compatible
Windows Server 2008
Encabezado
Wbemdisp.h
Biblioteca de tipos
Wbemdisp.tlb
Archivo DLL
Wbemdisp.dll
CLSID
CLSID_SWbemObject
IID
IID_ISWbemObject

Consulte también

SWbemObject

SWbemObjectSet

SWbemRefreshableItem