Come eseguire una query sincrona tramite System.Management

Per eseguire una query sincrona sul client di Configuration Manager Strumentazione gestione Windows (WMI), usare un ManagementObjectSearcher oggetto.

Per leggere una proprietà lazy da un oggetto di Configuration Manager restituito in una query, si ottiene l'istanza dell'oggetto, che a sua volta recupera tutte le proprietà dell'oggetto lazy dal provider SMS.

Per eseguire una query sincrona

  1. Configurare una connessione allo spazio dei nomi WMI del client di Configuration Manager. Per altre informazioni, vedi Come connettersi allo spazio dei nomi WMI del client di Configuration Manager tramite System.Management.

  2. Creare una raccolta ManagementObjectSearcher e specificare una query WQL.

  3. Scorrere l'insieme ManagementObjectSearcher per visualizzare il oggetto ManagementObject per ogni oggetto WMI restituito dalla query.

Esempio

Di seguito viene eseguita una query di codice C# per il singolo SMS_Client oggetto presente in un client di Configuration Manager.

Per informazioni sulla chiamata del codice di esempio, vedere Come chiamare un metodo di classe WMI utilizzando 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;  
    }  
}  

Questo metodo di esempio include i parametri seguenti:

Parametro Tipo Descrizione
scope ManagementScope Rappresenta un ambito (spazio dei nomi) per le operazioni di gestione.

Compilazione del codice

Spazi dei nomi

Sistema.

System.Management.

Assembly

System.Management.

Programmazione efficiente

L'eccezione che può essere generata è System.Management.ManagementException.

Vedere anche

Informazioni sulla programmazione WMI di Configuration Manager
Come chiamare un metodo di classe WMI tramite System.Management
Come connettersi allo spazio dei nomi WMI del client di Configuration Manager tramite System.Management
Come eseguire una query asincrona tramite System.Management
Come leggere un oggetto WMI tramite System.Management