속성 공급자에 대한 기본 인터페이스 구현

속성 공급자는 IWbemPropertyProvider 메서드를 WMI의 기본 인터페이스로 사용합니다. IWbemPropertyProvider를 사용하면 클래스 및 인스턴스 속성을 검색하고 수정하는 코드를 구현할 수 있습니다.

다음 표에서는 속성 공급자에 대해 구현할 수 있는 IWbemPropertyProvider 메서드를 나열합니다.

방법 기능
Getproperty 검색
PutProperty 수정

 

참고

속성 공급자를 In-process 공급자로 구현해야 합니다. WMI는 서비스 또는 실행 파일로 작성된 속성 공급자를 초기화하지만 GetPropertyPutProperty 메서드를 호출하지 않습니다.

 

이러한 방법 중 하나를 지원하지 않도록 선택하는 경우 공급자는 WBEM_E_PROVIDER_NOT_CAPABLE 반환하는 스텁 구현을 제공할 수 있습니다.

속성 공급자는 PropertyContext, InstanceContext 및 ClassContext의 세 가지 한정자 집합으로 관리되는 클래스 또는 인스턴스를 식별 합니다. WMI는 이러한 세 가지 한정자를 설명하는 문자열 상수로 속성 공급자에게 전달합니다.

속성 공급자는 다음과 같은 유형의 컨텍스트 한정자를 처리할 준비가 되어 있어야 합니다.

  • InstanceContext 한정자는 인스턴스에 연결되며 인스턴스의 모든 속성에 적용되는 정보를 포함합니다.
  • ClassContext 한정자는 클래스에 연결되며 클래스의 모든 인스턴스에 적용되는 정보를 포함합니다. 예를 들어 레지스트리 공급자가 제공한 데이터를 저장하는 데 사용되는 클래스에서 ClassContext 는 보고할 속성을 포함하는 레지스트리 키의 경로일 수 있습니다.
  • PropertyContext 한정자는 속성과 관련된 컨텍스트별 정보를 지정합니다. 예를 들어 레지스트리 공급자가 제공한 데이터를 저장하는 데 사용되는 클래스에서 PropertyContext 는 속성에 의해 저장될 레지스트리 값의 이름을 지정합니다.

이러한 한정자는 함께 작동할 수 있습니다. InstanceContextPropertyContext 값을 모두 지정하여 공급자에게 특정 유형의 인스턴스를 처리하는 방법을 알려줄 수 있습니다. 예를 들어 공급자가 읽을 수 있지만 쓰기 가능한 속성이 하나만 있는 인스턴스를 표시할 수 있습니다.

사용되는 가장 일반적인 한정자는 PropertyContext입니다. 따라서 WMI는 DynProps 한정자를 바로 가기로 제공합니다. WMI는 DynProps 로 표시된 인스턴스의 각 속성에 동적, 공급자PropertyContext 한정자가 있는 것으로 간주합니다.