Partager via


CmRegisterCallbackEx, fonction (wdm.h)

La routine CmRegisterCallbackEx inscrit une routine RegistryCallback.

Syntaxe

NTSTATUS CmRegisterCallbackEx(
  [in]           PEX_CALLBACK_FUNCTION Function,
  [in]           PCUNICODE_STRING      Altitude,
  [in]           PVOID                 Driver,
  [in, optional] PVOID                 Context,
  [out]          PLARGE_INTEGER        Cookie,
                 PVOID                 Reserved
);

Paramètres

[in] Function

Pointeur vers la routine RegistryCallback à inscrire.

[in] Altitude

Pointeur vers une structure UNICODE_STRING. Cette structure doit contenir une chaîne qui représente l’altitude du pilote minifilter appelant . Pour plus d’informations, consultez Remarques.

[in] Driver

Pointeur vers la structure DRIVER_OBJECT qui représente le pilote.

[in, optional] Context

Valeur définie par le pilote que le gestionnaire de configuration passe en tant que paramètre CallbackContext à la routine RegistryCallback.

[out] Cookie

Pointeur vers une variable LARGE_INTEGER qui reçoit la valeur qui identifie la routine de rappel. Lorsque vous annulez l’inscription de la routine de rappel, transmettez cette valeur en tant que paramètre Cookie à CmUnRegisterCallback.

Reserved

Ce paramètre est réservé à une utilisation ultérieure.

Valeur de retour

CmRegisterCallbackEx retourne STATUS_SUCCESS si l’opération réussit. Dans le cas contraire, cette routine peut retourner l’une des valeurs de NTSTATUS suivantes :

Retourner le code Description
STATUS_FLT_INSTANCE_ALTITUDE_COLLISION
Le pilote appelant ou un autre pilote a déjà inscrit une routine RegistryCallback pour l’altitude spécifiée.
STATUS_INSUFFICIENT_RESOURCES
Une tentative d’allocation de mémoire a échoué.

Remarques

La routine CmRegisterCallbackEx est disponible à partir de Windows Vista.

Un pilote peut appeler CmRegisterCallback ou CmRegisterCallbackEx pour inscrire une routine RegistryCallback, appelée chaque fois qu’un thread effectue une opération sur le Registre.

Le paramètre Altitude définit la position du pilote minifilter par rapport à d’autres minifilters dans la pile d’E/S lorsque le minifilter est chargé. L’allocation d’altitudes aux minifilters est gérée par Microsoft. Pour plus d’informations sur les altitudes, consultez groupes de commandes de chargement et altitudes pour les pilotes Minifilter.

Appelez CmUnRegisterCallback pour annuler l’inscription d’une routine de rappel qui CmRegisterCallbackEx inscrite.

Pour plus d’informations sur CmRegisterCallbackEx et les opérations de filtrage du Registre, consultez appels de Registre de filtrage.

Exigences

Exigence Valeur
client minimum pris en charge Disponible à partir de Windows Vista.
plateforme cible Universel
d’en-tête wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
bibliothèque NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <=APC_LEVEL
règles de conformité DDI HwStorPortProhibitedDDIs(storport), IrqlExApcLte2(wdm)

Voir aussi

CmRegisterCallback

CmUnRegisterCallback

DRIVER_OBJECT

RegistryCallback

UNICODE_STRING