Partager via


Comment effectuer une requête de Configuration Manager synchrone à l’aide de WMI

Dans Configuration Manager, vous effectuez une requête synchrone pour Configuration Manager objets en appelant la méthode ExecQuery de l’objet SWbemServices et en transmettant une requête WQL.

Une requête synchrone est une requête qui conserve le contrôle sur le processus de votre application pendant la durée de la requête. Une requête synchrone peut verrouiller votre application pour les requêtes volumineuses ou pour les requêtes sur un réseau. Vous pouvez également exécuter une requête asynchrone qui retourne le contrôle à l’application pendant l’exécution de la requête. Pour plus d’informations, consultez How to Perform an Asynchrone Configuration Manager Query by Using Managed Code

Remarque

Les propriétés différées ne sont pas retournées dans les requêtes synchrones. Pour plus d’informations, consultez Guide pratique pour lire des propriétés différées à l’aide de WMI.

Pour effectuer une requête synchrone

  1. Configurez une connexion au fournisseur SMS. Pour plus d’informations, consultez Connexion à un fournisseur SMS dans Configuration Manager à l’aide de WMI.

  2. À l’aide de l’objet SWbemServices que vous obtenez à l’étape 1, utilisez la méthode ExecQuery pour obtenir une collection SWbemObjectSet contenant les résultats de la requête.

  3. Effectuez une itération dans la collection SWbemObjectSet pour accéder à un objet SWbemObject pour chaque objet retourné par la requête.

Exemple

L’exemple suivant effectue une requête synchrone de tous les packages dans Configuration Manager.

Pour plus d’informations sur l’appel de l’exemple de code, consultez Appel d’extraits de code 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  

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

Paramètre Type Description
connection SWbemServices Connexion valide au fournisseur SMS.

Voir aussi

Windows Infrastructure de gestion
Vue d’ensemble des objetsComment appeler une méthode de classe d’objet Configuration Manager à l’aide de WMI
Comment se connecter à un fournisseur SMS dans Configuration Manager à l’aide de WMI
Comment créer un objet Configuration Manager à l’aide de WMI
Comment supprimer un objet Configuration Manager à l’aide de WMI
Comment modifier un objet Configuration Manager à l’aide de WMI
Comment effectuer une requête Configuration Manager asynchrone à l’aide de WMI
Guide pratique pour lire un objet Configuration Manager à l’aide de WMI
Guide pratique pour lire des propriétés différées à l’aide de WMI
langage de requête WMI étendu Configuration Manager
Configuration Manager jeux de résultats
Configuration Manager requêtes spéciales
À propos des requêtes