Fonction NtNotifyChangeMultipleKeys (winternl.h)
[Cette fonction peut être modifiée ou supprimée de Windows sans préavis. ]
Demande une notification lorsqu’une clé de Registre ou l’une de ses sous-clés change.
Syntaxe
__kernel_entry NTSTATUS NtNotifyChangeMultipleKeys(
[in] HANDLE MasterKeyHandle,
[in, optional] ULONG Count,
[in, optional] OBJECT_ATTRIBUTES [] SubordinateObjects,
[in, optional] HANDLE Event,
[in, optional] PIO_APC_ROUTINE ApcRoutine,
[in, optional] PVOID ApcContext,
[out] PIO_STATUS_BLOCK IoStatusBlock,
[in] ULONG CompletionFilter,
[in] BOOLEAN WatchTree,
[out, optional] PVOID Buffer,
[in] ULONG BufferSize,
[in] BOOLEAN Asynchronous
);
Paramètres
[in] MasterKeyHandle
Handle d’une clé ouverte. Le handle doit être ouvert avec le droit d’accès KEY_NOTIFY .
[in, optional] Count
Nombre de sous-clés sous la clé spécifiée par le paramètre MasterKeyHandle . Ce paramètre doit être 1.
[in, optional] SubordinateObjects
Pointeur vers un tableau de structures OBJECT_ATTRIBUTES , une pour chaque sous-clé. Ce tableau peut contenir une structure OBJECT_ATTRIBUTES .
[in, optional] Event
Handle pour un événement créé par l’appelant. Si Event n’a pas la valeur NULL, l’appelant attend que l’opération aboutisse, date à laquelle l’événement est signalé.
[in, optional] ApcRoutine
Pointeur vers une fonction d’appel de procédure asynchrone (APC) fournie par l’appelant. Si ApcRoutine n’est pas NULL, la fonction APC spécifiée s’exécute une fois l’opération terminée.
[in, optional] ApcContext
Pointeur vers un contexte fourni par l’appelant pour sa fonction APC. Cette valeur est passée à la fonction APC lors de son exécution. Le paramètre Asynchrone doit être TRUE. Si ApcContext est spécifié, le paramètre Event doit être NULL.
[out] IoStatusBlock
Pointeur vers une structure de IO_STATUS_BLOCK qui contient la status finale et des informations sur l’opération. Pour les appels réussis qui retournent des données, le nombre d’octets écrits dans le paramètre Buffer est fourni dans le membre Information de la structure IO_STATUS_BLOCK .
[in] CompletionFilter
Bitmap d’opérations qui déclenchent une notification. Ce paramètre peut être un ou plusieurs des indicateurs suivants.
[in] WatchTree
Si ce paramètre a la valeur TRUE, l’appelant est averti des modifications apportées à toutes les sous-clés de la clé spécifiée. Si ce paramètre a la valeur FALSE, l’appelant est averti uniquement des modifications apportées à la clé spécifiée.
[out, optional] Buffer
Réservé pour le système. Ce paramètre doit être NULL.
[in] BufferSize
Réservé pour le système. Ce paramètre doit être égal à zéro.
[in] Asynchronous
Si ce paramètre a la valeur TRUE, la fonction retourne immédiatement. Si ce paramètre a la valeur FALSE, la fonction ne retourne pas tant que l’événement spécifié ne se produit pas.
Valeur retournée
Retourne un code d’erreur ou NTSTATUS .
Si le paramètre Asynchrone a la valeur TRUE et que l’événement spécifié ne s’est pas encore produit, la fonction retourne STATUS_PENDING.
Les formes et l’importance des codes d’erreur NTSTATUS sont répertoriées dans le fichier d’en-tête Ntstatus.h disponible dans le WDK et sont décrits dans la documentation WDK.
Remarques
Cette fonction n’a aucun fichier d’en-tête associé. Vous pouvez également utiliser les fonctions LoadLibrary et GetProcAddress pour établir une liaison dynamique vers Ntdll.dll.
Configuration requise
Plateforme cible | Windows |
En-tête | winternl.h |
Bibliothèque | ntdll.lib |
DLL | ntdll.dll |