Compartir a través de


Cómo realizar una consulta de Configuration Manager sincrónica mediante WMI

En Configuration Manager, realice una consulta sincrónica para Configuration Manager objetos llamando al método ExecQuery del objeto SWbemServices y pasando una consulta WQL.

Una consulta sincrónica es una consulta que mantiene el control sobre el proceso de la aplicación durante la consulta. Una consulta sincrónica tiene la posibilidad de bloquear la aplicación para consultas grandes o para consultas a través de una red. Como alternativa, puede ejecutar una consulta asincrónica que devuelva el control a la aplicación mientras se ejecuta la consulta. Para obtener más información, vea How to Perform an Asynchronous Configuration Manager Query by Using Managed Code (Cómo realizar una consulta asincrónica de Configuration Manager mediante código administrado).

Nota:

Las propiedades diferidas no se devuelven en consultas sincrónicas. Para obtener más información, vea How to Read Lazy Properties by Using WMI (Cómo leer propiedades diferidas mediante WMI).

Para realizar una consulta sincrónica

  1. Configure una conexión con el proveedor de SMS. Para obtener más información, vea Cómo conectarse a un proveedor de SMS en Configuration Manager mediante WMI.

  2. Con el objeto SWbemServices que se obtiene del paso uno, use el método ExecQuery para obtener una colección SWbemObjectSet que contenga los resultados de la consulta.

  3. Recorra en iteración la colección SWbemObjectSet para obtener acceso a un objeto SWbemObject para cada objeto devuelto por la consulta.

Ejemplo

En el ejemplo siguiente se realiza una consulta sincrónica de todos los paquetes de Configuration Manager.

Para obtener información sobre cómo llamar al código de ejemplo, vea Llamar a fragmentos de código de 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

Este método de ejemplo tiene los parámetros siguientes:

Parámetro Tipo Descripción
connection SWbemServices Una conexión válida al proveedor de SMS.

Consulta también

Información general sobre los objetosde instrumentación de administración de WindowsCómo llamar a un método de clase de objeto Configuration Manager mediante WMICómo conectarse a un proveedor de SMS en Configuration Manager mediante WMICómo crear un objeto Configuration Manager mediante WMIHow to Eliminar un objeto Configuration Manager mediante WMICómo modificar un objeto Configuration Manager mediante WMICómo realizar una consulta asincrónica Configuration Manager mediante WMICómo leer un Configuration Manager Object by Using WMIHow to Read Lazy Properties by Using WMIConfiguration Manager Extended WMI Query LanguageConfiguration Manager Result SetsConfiguration Manager Special QueriesAbout queries