如何使用托管代码执行同步Configuration Manager查询

若要使用托管 SMS 提供程序执行同步查询,请使用 WqlConnectionManager.QueryProcessor.ExecuteQuery 方法。

ExecuteQuery 方法接受 WQL 查询字符串和调用的可选上下文信息。 返回 一个 IResultObject ,其中包含在查询中找到的对象。

执行同步查询

  1. 设置与 SMS 提供程序的连接。 有关详细信息,请参阅 SMS 提供程序基础知识

  2. 使用在步骤 1 中获取的 WqlConnectionManager 对象,调用 QueryProcessor 对象 ExecuteQuery 方法查询 SMS 提供程序,并获取包含查询结果集合的 IResultObject

示例

下面的代码示例演示如何使用 ExecuteQuery 对可用包进行同步查询。

有关调用示例代码的信息,请参阅调用Configuration Manager代码片段

public void QueryPackages(WqlConnectionManager connection)  
{  
    try  
    {  
        IResultObject query = connection.QueryProcessor.ExecuteQuery("Select * from SMS_Package");  
        foreach (IResultObject o in query)  
        {  
            Console.WriteLine(o["Name"].StringValue);  
            o.Dispose();  
        }  
    }  
    catch (SmsException ex)  
    {  
        Console.WriteLine("Failed to query packages: " + ex.Message);  
        throw;  
    }  
}  

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

参数 类型 说明
connection 管理: WqlConnectionManager 与 SMS 提供程序的有效连接。

编译代码

命名空间

System

System.Collections.Generic

System.ComponentModel

Microsoft。ConfigurationManagement.ManagementProvider

Microsoft。ConfigurationManagement.ManagementProvider.WqlQueryEngine

Assembly

microsoft.configurationmanagement.managementprovider

adminui.wqlqueryengine

可靠编程

可以引发Configuration Manager异常是 SmsConnectionExceptionSmsQueryException。 这些可与 SmsException 一起捕获。

另请参阅

对象概述Configuration Manager延迟属性
如何使用托管代码调用 Configuration Manager 对象类方法
如何使用托管代码连接到Configuration Manager提供程序
如何使用托管代码创建Configuration Manager对象
如何使用托管代码修改Configuration Manager对象
如何使用托管代码执行异步Configuration Manager查询
如何使用托管代码读取Configuration Manager对象
如何使用托管代码读取延迟属性
Configuration Manager扩展 WMI 查询语言
Configuration Manager结果集
Configuration Manager特殊查询
关于查询