인스턴스 개체 경로 설명
인스턴스 개체 경로는 특정 네임스페이스 내에서 지정된 클래스의 인스턴스 위치를 설명합니다.
다음과 같은 여러 종류의 인스턴스 개체 경로를 사용할 수 있습니다.
전체
전체 인스턴스 개체 경로는 클래스의 키 속성 이름과 값을 전체 클래스 개체 경로에 추가합니다.
다음 예제에서는 전체 인스턴스 개체 경로의 정의를 보여줍니다.
\\Server\Namespace:Class.KeyName="KeyValue"
상대
상대 개체 경로는 현재 서버의 현재 네임스페이스에 있는 인스턴스를 나타냅니다. 상대 경로는 클래스 이름 뒤에 이 인스턴스의 키 속성의 이름과 값으로 구성됩니다.
다음 예제에서는 상대 인스턴스 개체 경로의 정의를 보여줍니다.
MyClass.MyProp="e:"
단일 키를 사용하여 상대적임
하나의 속성만 키로 지정된 클래스의 경우 키 속성 이름을 생략할 수 있습니다.
다음 예제에서는 단일 키를 사용해 상대 인스턴스 개체 경로의 정의를 보여줍니다.
MyClass="e:"
여러 키를 사용하여 상대적임
여러 키가 있는 인스턴스의 키를 쉼표로 구분합니다.
다음 예제에서는 여러 키가 있는 상대 인스턴스 개체 경로의 정의를 보여줍니다.
MyOtherClass.FirstKey=1,SecondKey=2
싱글톤 클래스에 대해 상대적임
싱글톤 클래스의 상대 개체 경로는 클래스 이름 뒤에 "=@" 표기법으로 구성됩니다.
다음 예제에서는 싱글톤 클래스에 대한 상대 인스턴스 개체 경로의 정의를 보여줍니다.
MySingletonClass=@
다음 절차는 클래스 인스턴스를 검색하는 방법을 보여줍니다.
클래스 인스턴스 검색하기
SysAllocString 함수를 호출하여 개체 경로가 포함된 문자열을 초기화합니다.
인스턴스를 받을 개체를 초기화합니다.
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