Méthode SWbemServices.Get
La méthode Get de l’objet SWbemServices récupère un objet, qui est une définition de classe ou une instance, en fonction du chemin d’accès de l’objet. Cette méthode récupère uniquement les objets de l’espace de noms associé à l’objet SWbemServices actuel.
La méthode est appelée en mode synchrone. Pour plus d’informations, consultez Appel d’une méthode.
Pour obtenir une explication de cette syntaxe, consultez Conventions de document pour l’API de script.
Syntaxe
objWbemObject = .Get( _
[ ByVal strObjectPath ], _
[ ByVal iFlags ], _
[ ByVal objWbemNamedValueSet ] _
)
Paramètres
-
strObjectPath [optional]
-
Chaîne qui contient le chemin d’accès de l’objet à récupérer. Si cette valeur est vide, l’objet vide retourné peut devenir une nouvelle classe. Pour plus d’informations, consultez Description de l’emplacement d’un objet WMI.
-
iFlags [facultatif]
-
Entier qui détermine le comportement de la requête. Ce paramètre peut accepter les valeurs suivantes.
-
wbemFlagUseAmendedQualifiers (131072 (0x20000))
-
Permet à WMI de retourner des données de modification de classe avec la définition de classe de base. Pour plus d’informations sur les qualificateurs modifiés, consultez Localisation des informations de classe WMI.
objWbemNamedValueSet [optional]
En règle générale, ceci n’est pas défini. Sinon, il s’agit d’un objet SWbemNamedValueSet dont les éléments représentent les informations de contexte qui peuvent être utilisées par le fournisseur répondant à la demande. Un fournisseur qui prend en charge ou requiert de telles informations doit documenter les noms de valeur reconnus, le type de données de la valeur, les valeurs autorisées et la sémantique.
Valeur retournée
Si elle réussit, cette méthode retourne un objet SWbemObject qui représente l’objet demandé.
Codes d’erreur
Une fois la méthode Get terminée, l’objet Err peut contenir l’un des codes d’erreur de la liste suivante.
-
wbemErrAccessDenied - 2147749891 (0x80041003)
-
L’utilisateur actuel n’est pas autorisé à accéder à l’objet.
-
wbemErrFailed - 2147749889 (0x80041001)
-
Erreur non spécifiée.
-
wbemErrInvalidParameter - 2147749896 (0x80041008)
-
Un paramètre spécifié n’est pas valide.
-
wbemErrInvalidObjectPath - 2147749946 (0x8004103A)
-
Le chemin spécifié n’est pas valide.
-
wbemErrNotFound - 2147749890 (0x80041002)
-
L’objet demandé est introuvable.
-
wbemErrOutOfMemory - 2147749894 (0x80041006)
-
La mémoire disponible est insuffisante pour terminer cette opération.
Notes
Contrairement aux méthodes ExecQuery et InstancesOf, la méthode Get retourne toujours un SWbemObject représentant une instance spécifique d’une ressource managée par WMI. Pour obtenir une instance spécifique d’une ressource managée par WMI à l’aide de la méthode Get, vous devez indiquer à Get de récupérer l’instance en transmettant à la méthode le chemin d’accès de l’objet, comme indiqué dans le script suivant.
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
Vous pouvez utiliser cette méthode pour obtenir des objets singleton, tels que __CIMOMIdentification, qui contient des informations de version sur l’installation WMI en cours d’exécution.
Vous pouvez examiner le référentiel avec un outil d’affichage tel que CIM Studio pour vérifier que la nouvelle classe et les instances s’affichent. Pour obtenir un exemple de suppression d’une classe et d’une instance du référentiel, consultez SWbemServices.Delete ou SWbemObject.Delete_.
Spécifications
Condition requise | Valeur |
---|---|
Client minimal pris en charge |
Windows Vista |
Serveur minimal pris en charge |
Windows Server 2008 |
En-tête |
|
Bibliothèque de types |
|
DLL |
|
CLSID |
CLSID_SWbemServices |
IID |
IID_ISWbemServices |