PsSetCreateProcessNotifyRoutine, fonction (ntddk.h)
La routine PsSetCreateProcessNotifyRoutine ajoute une routine de rappel fournie par le pilote à une liste de routines à appeler chaque fois qu’un processus est créé ou supprimé.
Syntaxe
NTSTATUS PsSetCreateProcessNotifyRoutine(
[in] PCREATE_PROCESS_NOTIFY_ROUTINE NotifyRoutine,
[in] BOOLEAN Remove
);
Paramètres
[in] NotifyRoutine
Spécifie le point d’entrée d’une routine de création de processus fournie par l’appelant. Voir PCREATE_PROCESS_NOTIFY_ROUTINE.
[in] Remove
Indique si la routine spécifiée par NotifyRoutine doit être ajoutée ou supprimée de la liste des routines de notification du système. Si la valeur est FALSE, la routine spécifiée est ajoutée à la liste. Si la valeur est TRUE, la routine spécifiée est supprimée de la liste.
Valeur retournée
PsSetCreateProcessNotifyRoutine peut retourner l’un des éléments suivants :
Code de retour | Description |
---|---|
|
L’objet NotifyRoutine donné est maintenant inscrit auprès du système. |
|
L’objet NotifyRoutine donné a déjà été inscrit, donc cet appel est un appel redondant, ou le système a atteint sa limite d’inscription des rappels de création de processus. |
Remarques
Les pilotes de niveau supérieur peuvent appeler PsSetCreateProcessNotifyRoutine pour configurer leurs routines de notification de création de processus implémentées en tant que PCREATE_PROCESS_NOTIFY_ROUTINE.
Un pilote IFS ou de profilage système de niveau supérieur peut inscrire un rappel de création de processus pour suivre la création et la suppression à l’échelle du système des processus par rapport à l’état interne du pilote. Pour Windows Vista et les versions ultérieures de Windows, le système peut inscrire jusqu’à 64 routines de rappel de création de processus.
Un pilote doit supprimer tous les rappels qu’il inscrit avant de décharger. Vous pouvez supprimer le rappel en appelant PsSetCreateProcessNotify avec Remove = TRUE. Un pilote ne doit pas effectuer cet appel à partir de son implémentation de la routine de rappel PCREATE_PROCESS_NOTIFY_ROUTINE .
Une fois qu’une routine fournie par le pilote est inscrite, elle est appelée avec Create défini sur TRUE juste après la création du thread initial dans le processus nouvellement créé désigné par le handle ProcessId d’entrée. Le handle ParentId d’entrée identifie le processus parent du processus nouvellement créé (il s’agit du parent utilisé pour la priorité, l’affinité, le quota, le jeton et gérer l’héritage, entre autres).
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Disponible à partir de Windows 2000. |
Plateforme cible | Universal |
En-tête | ntddk.h (inclure Ntddk.h) |
Bibliothèque | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |
Règles de conformité DDI | HwStorPortProhibitedDDIs(storport),IrqlPsPassive(wdm), PowerIrpDDis(wdm) |
Voir aussi
PCREATE_PROCESS_NOTIFY_ROUTINE
PsSetCreateProcessNotifyRoutineEx