Jak wykonać synchroniczne zapytanie Configuration Manager przy użyciu usługi WMI
W Configuration Manager wykonasz synchroniczne zapytanie dotyczące obiektów Configuration Manager, wywołując metodę ExecQuery obiektu SWbemServices i przekazując zapytanie WQL.
Zapytanie synchroniczne to zapytanie, które zachowuje kontrolę nad procesem aplikacji przez czas trwania zapytania. Zapytanie synchroniczne może zablokować aplikację dla dużych zapytań lub zapytań za pośrednictwem sieci. Alternatywnie można uruchomić asynchroniczne zapytanie, które zwraca kontrolę do aplikacji podczas wykonywania zapytania. Aby uzyskać więcej informacji, zobacz How to Perform an Asynchronous Configuration Manager Query by Using Managed Code (Jak wykonać asynchroniczne zapytanie Configuration Manager przy użyciu kodu zarządzanego)
Uwaga
Właściwości z opóźnieniem nie są zwracane w zapytaniach synchronicznych. Aby uzyskać więcej informacji, zobacz How to Read Lazy Properties by Using WMI (Jak odczytywać właściwości z opóźnieniem przy użyciu usługi WMI).
Aby wykonać zapytanie synchroniczne
Skonfiguruj połączenie z dostawcą programu SMS. Aby uzyskać więcej informacji, zobacz How to Connect to an SMS Provider in Configuration Manager by Using WMI (Jak nawiązać połączenie z dostawcą programu SMS w Configuration Manager przy użyciu usługi WMI).
Używając obiektu SWbemServices, który uzyskujesz z kroku 1, użyj metody ExecQuery, aby uzyskać kolekcję SWbemObjectSet zawierającą wyniki zapytania.
Iteruj przez kolekcję SWbemObjectSet, aby uzyskać dostęp do obiektu SWbemObject dla każdego obiektu zwróconego przez zapytanie.
Przykład
Poniższy przykład wykonuje synchroniczne zapytanie dotyczące wszystkich pakietów w Configuration Manager.
Aby uzyskać informacje na temat wywoływania przykładowego kodu, zobacz Wywoływanie fragmentów kodu Configuration Manager.
Sub QueryPackages(connection)
On Error Resume next
Dim packages
Dim package
' Run the query.
Set packages = _
connection.ExecQuery("Select * From SMS_Package")
If Err.Number<>0 Then
Wscript.Echo "Couldn't get Packages"
Wscript.Quit
End If
For Each package In packages
WScript.Echo package.Name
Next
If packages.Count=0 Then
Wscript.Echo "No packages found"
End If
End Sub
Ta przykładowa metoda ma następujące parametry:
Parametr | Wpisać | Opis |
---|---|---|
connection |
SWbemServices | Prawidłowe połączenie z dostawcą programu SMS. |
Zobacz też
Instrumentacja zarządzania systemem Windows
Omówienie obiektówJak wywołać metodę klasy obiektów Configuration Manager przy użyciu usługi WMI
Jak nawiązać połączenie z dostawcą programu SMS w Configuration Manager przy użyciu usługi WMI
Jak utworzyć obiekt Configuration Manager przy użyciu usługi WMI
Jak usunąć obiekt Configuration Manager przy użyciu usługi WMI
Jak zmodyfikować obiekt Configuration Manager przy użyciu usługi WMI
Jak wykonać asynchroniczne zapytanie Configuration Manager przy użyciu usługi WMI
Jak odczytać obiekt Configuration Manager przy użyciu usługi WMI
Jak odczytywać właściwości z opóźnieniem przy użyciu usługi WMI
Configuration Manager rozszerzony język zapytań WMI
zestawy wyników Configuration Manager
Configuration Manager specjalnych zapytań
Informacje o zapytaniach