SWbemServices.Get-Methode
Die Get-Methode des SWbemServices-Objekts ruft basierend auf dem Objektpfad ein Objekt ab, bei dem es sich entweder um eine Klassendefinition oder eine Instanz handelt. Diese Methode ruft nur Objekte aus dem Namespace ab, der dem aktuellen SWbemServices-Objekt zugeordnet ist.
Die Methode wird im synchronen Modus aufgerufen. Weitere Informationen finden Sie unter Aufrufen einer Methode.
Eine Erläuterung dieser Syntax finden Sie unter Dokumentkonventionen für die Skript-API.
Syntax
objWbemObject = .Get( _
[ ByVal strObjectPath ], _
[ ByVal iFlags ], _
[ ByVal objWbemNamedValueSet ] _
)
Parameter
-
strObjectPath [optional]
-
Zeichenfolge, die den Objektpfad des abzurufenden Objekts enthält. Wenn dieser Wert leer ist, kann das zurückgegebene leere Objekt eine neue Klasse werden. Weitere Informationen finden Sie unter Beschreiben des Speicherorts eines WMI-Objekts.
-
iFlags [optional]
-
Ganze Zahl, die das Verhalten der Abfrage bestimmt. Dieser Parameter kann die folgenden Werte annehmen.
-
wbemFlagUseAmendedQualifiers (131072 (0x20000))
-
Bewirkt, dass WMI Klassenänderungsdaten mit der Basisklassendefinition zurückgibt. Weitere Informationen zu geänderten Qualifizierern finden Sie unter Lokalisieren von WMI-Klasseninformationen.
objWbemNamedValueSet [optional]
Dies ist in der Regel nicht definiert. Andernfalls handelt es sich um ein SWbemNamedValueSet-Objekt, dessen Elemente die Kontextinformationen darstellen, die von dem Anbieter verwendet werden können, der die Anforderung verarbeitet. Ein Anbieter, der solche Informationen unterstützt oder benötigt, muss die erkannten Wertnamen, den Datentyp des Werts, die zulässigen Werte und die Semantik dokumentieren.
Rückgabewert
Bei erfolgreicher Ausführung gibt diese Methode ein SWbemObject-Objekt zurück, das das angeforderte Objekt darstellt.
Fehlercodes
Nach Abschluss der Get-Methode enthält das Err-Objekt möglicherweise einen der Fehlercodes aus der folgenden Liste.
-
wbemErrAccessDenied – 2147749891 (0x80041003)
-
Der aktuelle Benutzer bzw. die aktuelle Benutzerin ist nicht berechtigt, auf das Objekt zuzugreifen.
-
wbemErrFailed – 2147749889 (0x80041001)
-
Unbekannter Fehler.
-
wbemErrInvalidParameter – 2147749896 (0x80041008)
-
Ein angegebener Parameter ist ungültig.
-
wbemErrInvalidObjectPath – 2147749946 (0x8004103A)
-
Der angegebene Pfad war ungültig.
-
wbemErrNotFound – 2147749890 (0x80041002)
-
Das angeforderte Objekt wurde nicht gefunden.
-
wbemErrOutOfMemory – 2147749894 (0x80041006)
-
Es ist nicht genügend Arbeitsspeicher zum Abschließen des Vorgangs vorhanden.
Bemerkungen
Im Gegensatz zu den Methoden ExecQuery und InstancesOf gibt die Get-Methode immer ein SWbemObject zurück, das eine bestimmte Instanz einer von WMI verwalteten Ressource darstellt. Um eine bestimmte Instanz einer von WMI verwalteten Ressource mithilfe der Get-Methode abzurufen, müssen Sie Get die abzurufende Instanz angeben, indem Sie den Objektpfad an die Methode übergeben, wie im folgenden Skript gezeigt.
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
Mit dieser Methode können Sie Singleton-Objekte abrufen, z. B. __CIMOMIdentification, die Versionsinformationen zur ausgeführten WMI-Installation enthält.
Sie können das Repository mit einem Anzeigetool wie CIM Studio überprüfen, um festzustellen, ob die neue Klasse und Instanz angezeigt werden. Ein Beispiel zum Entfernen einer Klasse und Instanz aus dem Repository finden Sie unter SWbemServices.Delete oder SWbemObject.Delete_.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) |
Windows Vista |
Unterstützte Mindestversion (Server) |
Windows Server 2008 |
Header |
|
Typbibliothek |
|
DLL |
|
CLSID |
CLSID_SWbemServices |
IID |
IID_ISWbemServices |