System.Management를 사용하여 동기 쿼리를 수행하는 방법

Configuration Manager 클라이언트 WMI(Windows Management Instrumentation)를 동기적으로 쿼리하려면 개체를 ManagementObjectSearcher 사용합니다.

쿼리에서 반환되는 Configuration Manager 개체에서 지연 속성을 읽으려면 개체 인스턴스를 가져와서 SMS 공급자에서 지연 개체 속성을 검색합니다.

동기 쿼리를 수행하려면

  1. Configuration Manager 클라이언트 WMI 네임스페이스에 대한 연결을 설정합니다. 자세한 내용은 System.Management를 사용하여 Configuration Manager 클라이언트 WMI 네임스페이스에 연결하는 방법을 참조하세요.

  2. ManagementObjectSearcher 컬렉션을 만들고 WQL 쿼리를 지정합니다.

  3. ManagementObjectSearcher 컬렉션을 반복하여 쿼리에서 반환되는 각 WMI 개체에 대한 ManagementObject를 봅니다.

예시

다음 C# 코드 예제에서는 Configuration Manager 클라이언트에 있는 단일 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.

어셈블리

System.Management.

강력한 프로그래밍

발생할 수 있는 예외는 System.Management.ManagementException입니다.

참고 항목

Configuration Manager WMI 프로그래밍 정보
System.Management를 사용하여 WMI 클래스 메서드를 호출하는 방법
System.Management를 사용하여 Configuration Manager 클라이언트 WMI 네임스페이스에 연결하는 방법
System.Management를 사용하여 비동기 쿼리를 수행하는 방법
System.Management를 사용하여 WMI 개체를 읽는 방법