Partager via


Comment effectuer une requête synchrone à l’aide de System.Management

Pour interroger de manière synchrone l’Configuration Manager client Windows Management Instrumentation (WMI), vous utilisez un ManagementObjectSearcher objet .

Pour lire une propriété différée à partir d’un objet Configuration Manager retourné dans une requête, vous obtenez l’instance de l’objet, qui à son tour récupère toutes les propriétés d’objet différées du fournisseur SMS.

Pour effectuer une requête synchrone

  1. Configurez une connexion à l’espace de noms WMI du client Configuration Manager. Pour plus d’informations, consultez Comment se connecter à l’espace de noms WMI du client Configuration Manager à l’aide de System.Management.

  2. Créez une collection ManagementObjectSearcher et spécifiez une requête WQL.

  3. Effectuez une itération dans la collection ManagementObjectSearcher pour afficher l’objet ManagementObject pour chaque objet WMI retourné par la requête.

Exemple

L’exemple de code C# suivant interroge l’objet unique SMS_Client qui se trouve sur un client Configuration Manager.

Pour plus d’informations sur l’appel de l’exemple de code, consultez Comment appeler une méthode de classe WMI à l’aide de 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;  
    }  
}  

Cet exemple de méthode a les paramètres suivants :

Paramètre Type Description
scope ManagementScope Représente une étendue (espace de noms) pour les opérations de gestion.

Compilation du code

Espaces de noms

Système.

System.Management.

Assembly

System.Management.

Programmation robuste

L’exception qui peut être levée est System.Management.ManagementException.

Voir aussi

À propos de Configuration Manager programmation WMI
Comment appeler une méthode de classe WMI à l’aide de System.Management
Comment se connecter à l’espace de noms WMI du client Configuration Manager à l’aide de System.Management
Comment effectuer une requête asynchrone à l’aide de System.Management
Guide pratique pour lire un objet WMI à l’aide de System.Management