System.Management を使用して同期クエリを実行する方法

Configuration Manager クライアント Windows Management Instrumentation (WMI) を同期的に照会するには、オブジェクトをManagementObjectSearcher使用します。

クエリで返されるConfiguration Manager オブジェクトから遅延プロパティを読み取るには、オブジェクト インスタンスを取得します。これにより、SMS プロバイダーから遅延オブジェクト プロパティが取得されます。

同期クエリを実行するには

  1. Configuration Manager クライアント WMI 名前空間への接続を設定します。 詳細については、「System.Management を使用してConfiguration Manager クライアント WMI 名前空間に接続する方法」を参照してください。

  2. ManagementObjectSearcher コレクションを作成し、WQL クエリを指定します。

  3. ManagementObjectSearcher コレクションを反復処理して、クエリによって返される各 WMI オブジェクトの ManagementObject を表示します。

次の C# コード例では、Configuration Manager クライアント上にある 1 つのSMS_Clientオブジェクトを照会します。

サンプル コードの呼び出しについては、「 System.Management を使用して WMI クラス メソッドを呼び出す方法」を参照してください。


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;  
    }  
}  

この例のメソッドには、次のパラメーターがあります。

パラメーター 説明
scope ManagementScope 管理操作のスコープ (名前空間) を表します。

コードのコンパイル

名前空間

システム。

System.Management。

Assembly

System.Management。

堅牢なプログラミング

発生できる例外は System.Management.ManagementException です

関連項目

WMI プログラミングConfiguration Managerについて
System.Management を使用して WMI クラス メソッドを呼び出す方法
System.Management を使用してConfiguration Manager クライアント WMI 名前空間に接続する方法
System.Management を使用して非同期クエリを実行する方法
System.Management を使用して WMI オブジェクトを読み取る方法