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 la section Notes.

[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 transmet 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é à un usage futur.

Valeur retournée

CmRegisterCallbackEx retourne STATUS_SUCCESS si l’opération réussit. Sinon, cette routine peut retourner l’une des valeurs NTSTATUS suivantes :

Code de retour 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 , qui est 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 minifiltres dans la pile d’E/S lorsque le minifiltre est chargé. L’allocation d’altitudes aux minifiltres est gérée par Microsoft. Pour plus d’informations sur les altitudes, consultez Groupes d’ordre de chargement et Altitudes pour les pilotes Minifilter.

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

Pour plus d’informations sur CmRegisterCallbackEx et le filtrage des opérations de Registre, consultez Filtrage des appels de registre.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Disponible à partir de Windows Vista.
Plateforme cible Universal
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