Funzione PsSetCreateThreadNotifyRoutineEx (ntddk.h)
La routine PsSetCreateThreadNotifyRoutineEx registra un callback fornito dal driver che viene successivamente notificato quando viene creato un nuovo thread e quando tale thread viene eliminato.
Sintassi
NTSTATUS PsSetCreateThreadNotifyRoutineEx(
[in] PSCREATETHREADNOTIFYTYPE NotifyType,
[in] PVOID NotifyInformation
);
Parametri
[in] NotifyType
Valore PSCREATETHREADNOTIFYTYPE che indica il tipo di notifica del thread.
[in] NotifyInformation
Fornisce l'indirizzo delle informazioni di notifica per il tipo specificato di notifica del thread. Se NotifyType è PsCreateThreadNotifyNonSystem o PsCreateThreadNotifySubsystems , NotifyInformation deve essere un puntatore all'implementazione del driver di PCREATE_THREAD_NOTIFY_ROUTINE.
Valore restituito
PsSetCreateThreadNotifyRoutineEx restituisce STATUS_SUCCESS o restituisce STATUS_INSUFFICIENT_RESOURCES se ha avuto esito negativo nella registrazione del callback.
Commenti
I driver di livello più alto possono chiamare PsSetCreateThreadNotifyRoutineEx per configurare le routine di notifica per la creazione di thread.
Ad esempio, un driver ifS o di profilatura di sistema di livello più alto potrebbe registrare un callback di creazione di thread per tenere traccia della creazione e dell'eliminazione a livello di sistema dei thread rispetto allo stato interno del driver.
Se NotifyType è PsCreateThreadNotifyNonSystem, la routine PsSetCreateThreadNotifyRoutineEx differisce da PsSetCreateThreadNotifyRoutine nel contesto in cui viene eseguito il callback. Con PsSetCreateThreadNotifyRoutine, il callback viene eseguito nel thread di creator. Con PsSetCreateThreadNotifyRoutineEx, il callback viene eseguito nel thread appena creato.
Un driver deve rimuovere qualsiasi funzione di callback registrata prima che venga scaricata. È possibile rimuovere il callback chiamando la routine PsRemoveCreateThreadNotifyRoutine .
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Disponibile a partire da Windows 10. |
Piattaforma di destinazione | Universale |
Intestazione | ntddk.h (include Ntddk.h) |
Libreria | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |
Vedi anche
PsRemoveCreateThreadNotifyRoutine
PsSetCreateProcessNotifyRoutine