WDF_WMI_INSTANCE_CONFIG_INIT_PROVIDER 함수(wdfwmi.h)

[KMDF에만 적용]

WDF_WMI_INSTANCE_CONFIG_INIT_PROVIDER 함수는 WDF_WMI_INSTANCE_CONFIG 구조를 초기화하고 지정된 핸들을 WMI 공급자 개체에 저장합니다.

구문

void WDF_WMI_INSTANCE_CONFIG_INIT_PROVIDER(
  [out] PWDF_WMI_INSTANCE_CONFIG Config,
  [in]  WDFWMIPROVIDER           Provider
);

매개 변수

[out] Config

WDF_WMI_INSTANCE_CONFIG 구조체에 대한 포인터입니다.

[in] Provider

WdfWmiProviderCreate에 대한 이전 호출에서 드라이버가 가져온 WMI 공급자 개체에 대한 핸들입니다.

반환 값

없음

설명

WDF_WMI_INSTANCE_CONFIG_INIT_PROVIDER 함수는 Config 매개 변수가 지정하는 WDF_WMI_INSTANCE_CONFIG 구조를 0으로 설정하고 Size 멤버를 설정합니다. 또한 이 함수는 구조체의 Provider 멤버를 Provider 매개 변수가 지정하는 핸들로 설정합니다.

WdfWmiInstanceCreate를 호출하기 전에 드라이버가 WDF_WMI_INSTANCE_CONFIG_INIT_PROVIDER 호출하여 WdfWmiProviderCreate를 호출하는 경우 WDF_WMI_INSTANCE_CONFIG 구조를 초기화해야 합니다.

예제

다음 코드 예제에서는 WDF_WMI_PROVIDER_CONFIG 구조를 초기화하고 WdfWmiProviderCreate를 호출합니다. 그런 다음, 이 예제에서는 WDF_WMI_INSTANCE_CONFIG 구조를 초기화하고 WdfWmiInstanceCreate를 호출합니다.

WDF_WMI_PROVIDER_CONFIG  providerConfig;
WDFWMIPROVIDER  provider;
GUID  providerGuid = MY_WMI_DATA_BLOCK_GUID;
WDF_WMI_INSTANCE_CONFIG  instanceConfig;
WDFWMIINSTANCE  instanceHandle;
NTSTATUS  status;

WDF_WMI_PROVIDER_CONFIG_INIT(
                             &providerConfig,
                             providerGuid
                             );
providerConfig.Flags = WdfWmiProviderTracing;
providerConfig.EvtWmiProviderFunctionControl = MyProviderFunctionControl;

status = WdfWmiProviderCreate(
                              Device,
                              &providerConfig,
                              WDF_NO_OBJECT_ATTRIBUTES,
                              &provider
                              );

if (!NT_SUCCESS(status)) {
    return status;
}
WDF_WMI_INSTANCE_CONFIG_INIT_PROVIDER(
                                      &instanceConfig,
                                      provider
                                      );
status = WdfWmiInstanceCreate(
                              Device,
                              &instanceConfig,
                              WDF_NO_OBJECT_ATTRIBUTES,
                              &instanceHandle
                              );
if (!NT_SUCCESS(status)) {
    return status;
}

요구 사항

요구 사항
대상 플랫폼 유니버설
최소 KMDF 버전 1.0
머리글 wdfwmi.h(Wdf.h 포함)

추가 정보

WDF_WMI_INSTANCE_CONFIG

WDF_WMI_INSTANCE_CONFIG_INIT_PROVIDER_CONFIG

WDF_WMI_PROVIDER_CONFIG

WDF_WMI_PROVIDER_CONFIG_INIT

WdfWmiInstanceCreate

WdfWmiProviderCreate