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结构归零并设置其 Size 成员。 此函数还将结构的 Provider 成员设置为 Provider 参数指定的句柄。

如果驱动程序在调用 WdfWmiInstanceCreate 之前调用 WdfWmiProviderCreate,则应调用 WDF_WMI_INSTANCE_CONFIG_INIT_PROVIDER 以初始化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