Metodo SWbemServices.Get

Il metodo Get dell'oggetto SWbemServices recupera un oggetto, ovvero una definizione di classe o un'istanza, in base al percorso dell'oggetto. Questo metodo recupera solo oggetti dallo spazio dei nomi associato all'oggetto SWbemServices corrente.

Il metodo viene chiamato nella modalità sincrona. Per altre informazioni, vedere Chiamata di un metodo.

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

Sintassi

objWbemObject = .Get( _
  [ ByVal strObjectPath ], _
  [ ByVal iFlags ], _
  [ ByVal objWbemNamedValueSet ] _
)

Parametri

strObjectPath [facoltativo]

Stringa contenente il percorso dell'oggetto da recuperare. Se questo valore è vuoto, l'oggetto vuoto restituito può diventare una nuova classe. Per altre informazioni, vedere Descrizione della posizione di un oggetto WMI.

iFlags [facoltativo]

Intero che determina il comportamento della query. Questo parametro può accettare i valori seguenti.

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 [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.

Valore restituito

In caso di esito positivo, questo metodo restituisce un oggetto SWbemObject che rappresenta l'oggetto richiesto.

Codici di errore

Al termine del metodo Get , l'oggetto Err può contenere uno dei codici di errore nell'elenco seguente.

wbemErrAccessDenied - 2147749891 (0x80041003)

L'utente corrente non dispone dell'autorizzazione per accedere all'oggetto.

wbemErrFailed - 2147749889 (0x80041001)

Errore non specificato.

wbemErrInvalidParameter - 2147749896 (0x80041008)

Un parametro specificato non è valido.

wbemErrInvalidObjectPath - 2147749946 (0x8004103A)

Percorso specificato non valido.

wbemErrNotFound - 2147749890 (0x80041002)

Impossibile trovare l'oggetto richiesto.

wbemErrOutOfMemory - 2147749894 (0x80041006)

Memoria insufficiente per completare l'operazione.

Commenti

A differenza dei metodi ExecQuery e InstanceOf , il metodo Get restituisce sempre un oggetto SWbemObject che rappresenta un'istanza specifica di una risorsa gestita da WMI. Per ottenere un'istanza specifica di una risorsa gestita da WMI usando il metodo Get, è necessario indicare a Get l'istanza di recuperare passando il metodo il percorso dell'oggetto, come illustrato nello script seguente.

strComputer = "."
Set objSWbemServices = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set objSWbemObject = objSWbemServices.Get("Win32_Service.Name='Messenger'")
Wscript.Echo "Name:         " & objSWbemObject.Name        & vbCrLf & _
             "Display Name: " & objSWbemObject.DisplayName & vbCrLf & _
             "Start Mode:   " & objSWbemObject.StartMode   & vbCrLf & _
             "State:        " & objSWbemObject.State

È possibile usare questo metodo per ottenere oggetti Singleton , ad esempio __CIMOMIdentification, che contiene informazioni sulla versione sull'installazione WMI in esecuzione.

È possibile esaminare il repository con uno strumento di visualizzazione, ad esempio CIM Studio , per verificare che venga visualizzata la nuova classe e la nuova istanza. Per un esempio di rimozione di una classe e di un'istanza dal repository, vedere SWbemServices.Delete o SWbemObject.Delete_.

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

SWbemObject