Condividi tramite


Metodo SWbemServices.InstancesOfAsync

Il metodo InstancesOfAsync dell'oggetto SWbemServices recupera le istanze di una classe specificata in base ai criteri specificati dall'utente.

Il metodo viene chiamato in modalità asincrona. Per altre informazioni, vedere Chiamata di un metodo.

Per la spiegazione della sintassi, vedere Document Conventions for the Scripting API (Convenzioni di documento per l'API di scripting).

Sintassi

SWbemServices.InstancesOfAsync( _
  ByVal ObjWbemSink, _
  ByVal strClass, _
  [ ByVal iFlags ], _
  [ ByVal objWbemNamedValueSet ], _
  [ ByVal objWbemAsyncContext ] _
)

Parametri

ObjWbemSink

Sink oggetto che riceve le istanze in modo asincrono. Creare un oggetto SWbemSink per ricevere gli oggetti .

strClass

Obbligatorio. Stringa contenente il nome della classe per le istanze desiderate. Questo parametro non può essere vuoto.

iFlags [facoltativo]

Determina la profondità dell'enumerazione della chiamata e indica se la chiamata restituisce immediatamente. Questo parametro può accettare i valori seguenti.

wbemQueryFlagShallow (1 (0x1))

Forza l'enumerazione in modo da includere solo sottoclassi immediate della classe padre specificata.

wbemQueryFlagDeep (0 (0x0))

Impostazione predefinita per questo parametro. Questo valore impone all'enumerazione di includere tutte le classi nella gerarchia.

wbemFlagSendStatus (128 (0x80))

Fa sì che le chiamate asincrone inviino gli aggiornamenti dello stato al gestore eventi OnProgress per il sink dell'oggetto.

wbemFlagDontSendStatus (0 (0x0))

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

wbemFlagUseAmendedQualifiers (131072 (0x20000))

Fa sì che WMI restituisca i dati di modifica della classe con la definizione della classe di base. Per altre informazioni, vedere Localizing WMI Class Information.For more information, see Localizing WMI Class Information.

objWbemNamedValueSet [facoltativo]

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

objWbemAsyncContext [facoltativo]

Oggetto SWbemNamedValueSet che restituisce al sink dell'oggetto per identificare l'origine della chiamata asincrona originale. Usare questo parametro se si eseguono più chiamate asincrone usando lo stesso sink dell'oggetto. Per usare questo parametro, creare un oggetto SWbemNamedValueSet e usare il metodo SWbemNamedValueSet.Add per aggiungere un valore che identifica la chiamata asincrona che si sta effettuando. Questo oggetto SWbemNamedValueSet viene restituito al sink dell'oggetto e l'origine della chiamata può essere estratta usando il metodo SWbemNamedValueSet.Item.

Valore restituito

Questo metodo non restituisce valori. In caso di 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

Al termine del metodo InstancesOfAsync , 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 le istanze della classe specificata.

wbemErrFailed - 2147749889 (0x80041001)

Errore non specificato.

wbemErrInvalidClass - 2147749904 (0x80041010)

La classe specificata non è valida.

wbemErrInvalidParameter - 2147749896 (0x80041008)

Un parametro specificato non è valido.

wbemErrOutOfMemory - 2147749894 (0x80041006)

Memoria insufficiente per completare l'operazione.

Osservazioni:

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

Un callback asincrono consente a un utente non autenticato di fornire dati al sink. Ciò comporta rischi per la sicurezza per gli script e le applicazioni. Per eliminare i rischi, vedere Impostazione della sicurezza in una chiamata asincrona

Il metodo InstancesOfAsync funziona solo per gli oggetti classe. Non è un errore che l'enumeratore restituito abbia zero elementi (0).

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_SWbemServices
IID
IID_ISWbemServices

Vedi anche

SWbemServices

Chiamata di un metodo