Partager via


PsSetCreateProcessNotifyRoutine, fonction (ntddk.h)

La routine PsSetCreateProcessNotifyRoutine ajoute une routine de rappel fournie par le pilote ou la supprime, 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 rappel 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 FALSE, la routine spécifiée est ajoutée à la liste. Si TRUE, la routine spécifiée est supprimée de la liste.

Valeur de retour

PsSetCreateProcessNotifyRoutine pouvez retourner l’une des options suivantes :

Retourner le code Description
STATUS_SUCCESS
Le NotifyRoutine donné est maintenant inscrit auprès du système.
STATUS_INVALID_PARAMETER
Le NotifyRoutine donné a déjà été inscrit, de sorte que cet appel est un appel redondant ou que 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 création de processus implémentées en tant que PCREATE_PROCESS_NOTIFY_ROUTINE.

Un pilote de profilage système de niveau supérieur ou IFS 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 les rappels qu’il inscrit avant de décharger. Vous pouvez supprimer le rappel en appelant PsSetCreateProcessNotify avec Supprimer = 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éfinie sur TRUE juste après la création du thread initial dans le processus nouvellement créé désigné par le handle d’entrée ProcessId. L’entrée ParentId handle identifie le processus parent du processus nouvellement créé (il s’agit du parent utilisé pour la priorité, l’affinité, le quota, le jeton et le traitement de l’héritage, entre autres).

Exigences

Exigence Valeur
client minimum pris en charge Disponible à partir de Windows 2000.
plateforme cible Universel
d’en-tête ntddk.h (include 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

PsGetCurrentProcessId

PsSetCreateProcessNotifyRoutineEx

PsSetCreateThreadNotifyRoutine

PsSetLoadImageNotifyRoutine