다음을 통해 공유


인스턴스 개체 경로 설명

인스턴스 개체 경로는 특정 네임스페이스 내에서 지정된 클래스의 인스턴스 위치를 설명합니다.

다음과 같은 여러 종류의 인스턴스 개체 경로를 사용할 수 있습니다.

  • 전체

    전체 인스턴스 개체 경로는 클래스의 키 속성 이름과 값을 전체 클래스 개체 경로에 추가합니다.

    다음 예제에서는 전체 인스턴스 개체 경로의 정의를 보여줍니다.

    \\Server\Namespace:Class.KeyName="KeyValue"
    
  • 상대

    상대 개체 경로는 현재 서버의 현재 네임스페이스에 있는 인스턴스를 나타냅니다. 상대 경로는 클래스 이름 뒤에 이 인스턴스의 키 속성의 이름과 값으로 구성됩니다.

    다음 예제에서는 상대 인스턴스 개체 경로의 정의를 보여줍니다.

    MyClass.MyProp="e:"
    
  • 단일 키를 사용하여 상대적임

    하나의 속성만 키로 지정된 클래스의 경우 키 속성 이름을 생략할 수 있습니다.

    다음 예제에서는 단일 키를 사용해 상대 인스턴스 개체 경로의 정의를 보여줍니다.

    MyClass="e:"
    
  • 여러 키를 사용하여 상대적임

    여러 키가 있는 인스턴스의 키를 쉼표로 구분합니다.

    다음 예제에서는 여러 키가 있는 상대 인스턴스 개체 경로의 정의를 보여줍니다.

    MyOtherClass.FirstKey=1,SecondKey=2
    
  • 싱글톤 클래스에 대해 상대적임

    싱글톤 클래스의 상대 개체 경로는 클래스 이름 뒤에 "=@" 표기법으로 구성됩니다.

    다음 예제에서는 싱글톤 클래스에 대한 상대 인스턴스 개체 경로의 정의를 보여줍니다.

    MySingletonClass=@
    

다음 절차는 클래스 인스턴스를 검색하는 방법을 보여줍니다.

클래스 인스턴스 검색하기

  1. SysAllocString 함수를 호출하여 개체 경로가 포함된 문자열을 초기화합니다.

  2. 인스턴스를 받을 개체를 초기화합니다.

  3. IWbemServices::GetObject 또는 IWbemServices::GetObjectAsync를 호출하여 개체를 검색합니다.

    GetObjectAsync를 사용하려면 IWbemSink 인터페이스를 구현해야 합니다.

이 항목의 뒷부분에 나열된 코드를 올바르게 컴파일링하려면 다음 #include 문이 필요합니다.

#include <wbemidl.h>

다음 코드 예제에서는 개체 경로를 사용하여 클래스 인스턴스를 검색하는 방법을 설명합니다.

IWbemServices* pWbemSvcs = 0;

BSTR Path = SysAllocString(L"ComPort=2");    
IWbemClassObject *pComPort = 0;
pWbemSvcs->GetObject(Path, 0, 0, &pComPort, 0);

여러 속성을 키로 지정하는 클래스 인스턴스의 경우 WMI는 개체 경로에서 키 속성의 특정 순서가 필요하지 않습니다. 개체 경로에 있는 각 속성의 값만 지정하면 됩니다.

다음 코드 예제에서는 두 개의 동등한 키 설명을 설명합니다.

MyClass.IntVal=33,StrVal="AAA"
MyClass.StrVal="AAA",IntVal=33