다음을 통해 공유


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

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

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

메서드 특징
GetProperty 검색
PutProperty 수정

 

메모

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

 

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

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

자산 제공자는 다음 유형의 컨텍스트 한정자를 처리할 준비가 되어 있어야 합니다.

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

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

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