CmSetCallbackObjectContext, fonction (wdm.h)
La routine CmSetCallbackObjectContext associe de nouvelles informations de contexte à un objet de Registre et une routine de rappel spécifiés.
Syntaxe
NTSTATUS CmSetCallbackObjectContext(
[in, out] PVOID Object,
[in] PLARGE_INTEGER Cookie,
[in] PVOID NewContext,
[out, optional] PVOID *OldContext
);
Paramètres
[in, out] Object
Pointeur vers l’objet de clé de Registre pour lequel le pilote fournit des informations de contexte. Le pilote obtient ce pointeur à partir de l'ResultObject membre de l’une des structures suivantes :
REG_OPEN_KEY_INFORMATION
REG_OPEN_KEY_INFORMATION_V1
[in] Cookie
Pointeur vers une valeur LARGE_INTEGER qui identifie la routine de rappel à laquelle associer le contexte. La routine CmRegisterCallbackEx fourni cette valeur lorsque vous avez inscrit la routine de rappel.
[in] NewContext
Pointeur vers les informations de contexte définies par le pilote.
[out, optional] OldContext
Pointeur vers un emplacement qui reçoit un pointeur vers les informations de contexte que le pilote a précédemment associées à l’objet et au cookie spécifiés. Ce paramètre est facultatif et peut être NULL.
Valeur de retour
CmSetCallbackObjectContext retourne STATUS_SUCCESS ou une autre valeur NTSTATUS-typée appropriée.
Remarques
La routine CmSetCallbackObjectContext est disponible à partir de Windows Vista.
La routine RegistryCallback d’un pilote peut appeler CmSetCallbackObjectContext pour tout objet de clé de Registre une fois l’objet créé ou ouvert (c’est-à-dire pendant une post-notification pour une opération de création, une opération ouverte ou toute notification ultérieure jusqu’à la pré-notification de fermeture du handle).
Si un pilote appelle CmSetCallbackObjectContext, la routine RegistryCallback du pilote reçoit une notification RegNtCallbackObjectContextCleanup une fois le handle de l’objet clé fermé ou après que le pilote appelle CmUnRegisterCallback pour annuler l’inscription de la routine RegistryCallback. Lorsque la routine RegistryCallback reçoit cette notification, la routine doit libérer toutes les ressources qu’elle a allouées pour le contexte de l’objet.
Si cmSetCallbackObjectContext est appelé avant notification RegNtCallbackObjectContextCleanup, OldContext peut toujours être référencé par RegistryCallback qui reçoit une autre notification. oldContext ne doit pas être publié avant notification RegNtCallbackObjectContextCleanup.
Pour plus d’informations sur CmSetCallbackObjectContext et les opérations de registre de filtrage, consultez d’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 |