Partager via


fonction WDF_WMI_INSTANCE_CONFIG_INIT_PROVIDER (wdfwmi.h)

[S’applique uniquement à KMDF]

La fonction WDF_WMI_INSTANCE_CONFIG_INIT_PROVIDER initialise une structure WDF_WMI_INSTANCE_CONFIG et stocke un handle spécifié dans un objet de fournisseur WMI.

Syntaxe

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

Paramètres

[out] Config

Pointeur vers une structure WDF_WMI_INSTANCE_CONFIG .

[in] Provider

Handle à un objet de fournisseur WMI que le pilote a obtenu par un appel précédent à WdfWmiProviderCreate.

Valeur de retour

None

Remarques

La fonction WDF_WMI_INSTANCE_CONFIG_INIT_PROVIDER zéro la structure WDF_WMI_INSTANCE_CONFIG que le paramètre Config spécifie et définit son membre Size . Cette fonction définit également le membre fournisseur de la structure sur le handle spécifié par le paramètre Provider .

Votre pilote doit appeler WDF_WMI_INSTANCE_CONFIG_INIT_PROVIDER pour initialiser une structure de WDF_WMI_INSTANCE_CONFIG s’il appelle WdfWmiProviderCreate avant d’appeler WdfWmiInstanceCreate.

Exemples

L’exemple de code suivant initialise une structure WDF_WMI_PROVIDER_CONFIG et appelle WdfWmiProviderCreate. Ensuite, l’exemple initialise une structure WDF_WMI_INSTANCE_CONFIG et appelle 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;
}

Configuration requise

Condition requise Valeur
Plateforme cible Universal
Version KMDF minimale 1.0
En-tête wdfwmi.h (inclure Wdf.h)

Voir aussi

WDF_WMI_INSTANCE_CONFIG

WDF_WMI_INSTANCE_CONFIG_INIT_PROVIDER_CONFIG

WDF_WMI_PROVIDER_CONFIG

WDF_WMI_PROVIDER_CONFIG_INIT

WdfWmiInstanceCreate

WdfWmiProviderCreate