Så här utför du en synkron fråga med hjälp av System.Management
Om du vill fråga Configuration Manager windows management instrumentation (WMI) synkront använder du ett ManagementObjectSearcher
-objekt.
Om du vill läsa en lazy-egenskap från ett Configuration Manager objekt som returneras i en fråga hämtar du objektinstansen, som i sin tur hämtar alla lazy-objektegenskaper från SMS-providern.
Så här utför du en synkron fråga
Konfigurera en anslutning till Configuration Manager klientens WMI-namnområde. Mer information finns i How to Connect to the Configuration Manager Client WMI Namespace by Using System.Management .
Skapa en ManagementObjectSearcher-samling och ange en WQL-fråga.
Iterera genom samlingen ManagementObjectSearcher för att visa ManagementObject för varje WMI-objekt som returneras av frågan.
Exempel
Följande C#-kodexempel frågar efter det enda SMS_Client
objekt som finns på en Configuration Manager-klient.
Information om hur du anropar exempelkoden finns i Så här anropar du en WMI-klassmetod med Hjälp av System.Management.
public void QueryObjects(ManagementScope scope)
{
try
{
ManagementObjectSearcher s = new ManagementObjectSearcher
((scope), new WqlObjectQuery("SELECT * FROM sms_client"));
foreach (ManagementObject o in s.Get())
{
// There is only one instance of SMS_Client, so this should enumerate only once.
Console.WriteLine("Client version: " + o["ClientVersion"].ToString());
}
}
catch (System.Management.ManagementException e)
{
Console.WriteLine("Failed to make query: ", e.Message);
throw;
}
}
Den här exempelmetoden har följande parametrar:
Parameter | Typ | Beskrivning |
---|---|---|
scope |
ManagementScope |
Representerar ett omfång (namnområde) för hanteringsåtgärder. |
Kompilera koden
Namnområden
System.
System.Management.
Församlingen
System.Management.
Robust programmering
Undantaget som kan aktiveras är System.Management.ManagementException.
Se även
Om Configuration Manager WMI-programmering
Anropa en WMI-klassmetod med hjälp av System.Management
Ansluta till Configuration Manager klientens WMI-namnområde med hjälp av System.Management
Så här utför du en asynkron fråga med hjälp av System.Management
Läsa ett WMI-objekt med System.Management