Condividi tramite


funzione WDF_WMI_INSTANCE_CONFIG_INIT_PROVIDER (wdfwmi.h)

[Si applica solo a KMDF]

La funzione WDF_WMI_INSTANCE_CONFIG_INIT_PROVIDER inizializza una struttura WDF_WMI_INSTANCE_CONFIG e archivia un handle specificato in un oggetto provider WMI.

Sintassi

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

Parametri

[out] Config

Puntatore a una struttura WDF_WMI_INSTANCE_CONFIG.

[in] Provider

Handle per un oggetto provider WMI ottenuto dal driver da una chiamata precedente a WdfWmiProviderCreare.

Valore restituito

Nessuno

Osservazioni

La funzione WDF_WMI_INSTANCE_CONFIG_INIT_PROVIDER zero la struttura WDF_WMI_INSTANCE_CONFIG specificata dal parametro Config e ne imposta il membro Size. Questa funzione imposta anche il membro provider della struttura sull'handle specificato dal parametro provider.

Il driver deve chiamare WDF_WMI_INSTANCE_CONFIG_INIT_PROVIDER per inizializzare una struttura WDF_WMI_INSTANCE_CONFIG se chiama WdfWmiProviderCreate prima di chiamare WdfWmiInstanceCreate.

Esempi

L'esempio di codice seguente inizializza una struttura di WDF_WMI_PROVIDER_CONFIG e chiama WdfWmiProviderCreare. L'esempio inizializza quindi una struttura di WDF_WMI_INSTANCE_CONFIG e chiama WdfWmiInstanceCreare.

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;
}

Fabbisogno

Requisito Valore
piattaforma di destinazione Universale
versione minima di KMDF 1.0
intestazione wdfwmi.h (include Wdf.h)

Vedere anche

WDF_WMI_INSTANCE_CONFIG

WDF_WMI_INSTANCE_CONFIG_INIT_PROVIDER_CONFIG

WDF_WMI_PROVIDER_CONFIG

WDF_WMI_PROVIDER_CONFIG_INIT

WdfWmiInstanceCreare

WdfWmiProviderCreare