如何使用 WMI 执行同步Configuration Manager查询

在 Configuration Manager 中,通过调用 SWbemServices 对象 ExecQuery 方法并传递 WQL 查询,对Configuration Manager 对象执行同步查询。

同步查询是一种查询,可在查询期间保持对应用程序进程的控制。 同步查询有可能锁定应用程序进行大型查询或通过网络进行查询。 或者,可以运行异步查询,该查询在运行查询时将控制权返回到应用程序。 有关详细信息,请参阅如何使用托管代码执行异步Configuration Manager查询

注意

同步查询中不返回延迟属性。 有关详细信息,请参阅 如何使用 WMI 读取延迟属性

执行同步查询

  1. 设置与 SMS 提供程序的连接。 有关详细信息,请参阅如何使用 WMI 连接到 Configuration Manager 中的 SMS 提供程序

  2. 使用从步骤 1 获取的 SWbemServices 对象,使用 ExecQuery 方法获取包含查询结果的 SWbemObjectSet 集合。

  3. 循环访问 SWbemObjectSet 集合,以访问查询返回的每个对象的 SWbemObject

示例

以下示例对Configuration Manager中的所有包执行同步查询。

有关调用示例代码的信息,请参阅调用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  

此示例方法具有以下参数:

参数 类型 说明
connection SWbemServices 与 SMS 提供程序的有效连接。

另请参阅

Windows Management Instrumentation
对象概述如何使用 WMI 调用 Configuration Manager 对象类方法
如何使用 WMI 连接到 Configuration Manager 中的短信提供程序
如何使用 WMI 创建Configuration Manager对象
如何使用 WMI 删除Configuration Manager对象
如何使用 WMI 修改Configuration Manager对象
如何使用 WMI 执行异步Configuration Manager查询
如何使用 WMI 读取Configuration Manager对象
如何使用 WMI 读取延迟属性
Configuration Manager扩展 WMI 查询语言
Configuration Manager结果集
Configuration Manager特殊查询
关于查询