SWbemObject.SubclassesAsync_ metodo

Il metodo SubclassesAsync_ di SWbemObject fornisce in modo asincrono le sottoclassi dell'oggetto corrente, che deve essere una classe.

Per una spiegazione di questa sintassi, vedere Convenzioni di documento per l'API scripting.

Sintassi

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

Parametri

objWbemSink [in]

Obbligatorio. Sink oggetto che riceve gli oggetti in modo asincrono.

iFlags [in, facoltativo]

Determina la modalità di enumerazione dettagliata della chiamata. Questo parametro può accettare i valori seguenti.

wbemQueryFlagDeep (0 (0x0))

Forza l'enumerazione ricorsiva in tutte le sottoclassi derivate dalla classe padre specificata. La classe padre stessa non viene restituita nell'enumerazione.

wbemQueryFlagShallow (1 (0x1))

Impostazione predefinita per questo parametro. Forza l'enumerazione per includere solo sottoclassi immediate della classe padre specificata.

wbemFlagSendStatus (128 (0x80))

Causa chiamate asincrone per inviare gli aggiornamenti dello stato al gestore eventi SWbemSink.OnProgress per il sink di oggetti.

wbemFlagDontSendStatus (0 (0x0))

Impedisce alle chiamate asincrone di inviare aggiornamenti dello stato al gestore eventi OnProgress per il sink di oggetti.

wbemFlagUseAmendedQualifiers (131072 (0x20000))

Consente a WMI di restituire i dati di modifica della classe con la definizione della classe di base. Per altre informazioni sui qualificatori modificati, vedere Localizzazione delle informazioni sulla classe WMI.

objWbemNamedValueSet [in, facoltativo]

In genere, questo è indefinito. In caso contrario, si tratta di un oggetto SWbemNamedValueSet i cui elementi rappresentano le informazioni di contesto che possono essere usate dal provider che esegue la manutenzione della richiesta. Un provider che supporta o richiede tali informazioni deve documentare i nomi di valore riconosciuti, il tipo di dati del valore, i valori consentiti e la semantica.

objWbemAsyncContext [in, facoltativo]

Si tratta di un oggetto SWbemNamedValueSet che restituisce al sink dell'oggetto per identificare l'origine della chiamata asincrona originale. Usare questo parametro quando si effettuano più chiamate asincrone usando lo stesso sink di oggetti. Per usare questo parametro, creare un oggetto SWbemNamedValueSet e usare il metodo SWbemNamedValueSet.Add per aggiungere un valore che identifica la chiamata asincrona eseguita. Questo oggetto SWbemNamedValueSet viene restituito al sink dell'oggetto e l'origine della chiamata può essere estratta usando il metodo SWbemNamedValueSet.Item . Per altre informazioni, vedere Chiamata di un metodo.

Valore restituito

Questo metodo non restituisce valori. Se ha esito positivo, il sink riceve un evento OnObjectReady per ogni istanza. Dopo l'ultima istanza, il sink dell'oggetto riceve un evento OnCompleted .

Codici di errore

Dopo il completamento del metodo SubclassesAsync_ , l'oggetto Err può contenere uno dei codici di errore nell'elenco seguente.

wbemErrAccessDenied - 2147749891 (0x80041003)

L'utente corrente non dispone dell'autorizzazione per visualizzare una o più classi restituite dalla chiamata.

wbemErrFailed - 2147749889 (0x80041001)

Errore non specificato.

wbemErrInvalidClass - 2147749904 (0x80041010)

La classe specificata non esiste.

wbemErrInvalidParameter - 2147749896 (0x80041008)

È stato specificato un parametro non valido.

wbemErrOutOfMemory - 2147749894 (0x80041006)

Memoria insufficiente per completare l'operazione.

Commenti

Questa chiamata restituisce immediatamente. Gli oggetti e lo stato richiesti vengono restituiti al chiamante tramite callback recapitati al sink specificato in objWbemSink. Per elaborare ogni oggetto quando arriva, creare un objWbemSink. Subroutine dell'evento OnObjectReady . Dopo aver restituito tutti gli oggetti, è possibile eseguire l'elaborazione finale nell'implementazione dell'objWbemSink. Evento OnCompleted .

Un callback asincrono consente a un utente non autenticato di fornire dati al sink. Ciò comporta rischi di sicurezza per gli script e le applicazioni. Per eliminare i rischi, usare la comunicazione semisynchrono o la comunicazione sincrona. Per altre informazioni, vedere Chiamata di un metodo.

È consigliabile che gli script verifichino l'origine della chiamata usando un parametro objWbemAsyncContext .

Non è un errore per l'insieme restituito per avere zero elementi se non sono presenti sottoclassi dell'oggetto corrente. Il metodo SubclassesAsync_ funziona solo per gli oggetti di classe.

Requisiti

Requisito Valore
Client minimo supportato
Windows Vista
Server minimo supportato
Windows Server 2008
Intestazione
Wbemdisp.h
Libreria dei tipi
Wbemdisp.tlb
DLL
Wbemdisp.dll
CLSID
CLSID_SWbemObject
IID
IID_ISWbemObject

Vedi anche

SWbemObject

SWbemObjectSet

SWbemRefreshableItem