PsSetCreateThreadNotifyRoutineEx-Funktion (ntddk.h)
Die PsSetCreateThreadNotifyRoutineEx Routine registriert einen vom Treiber bereitgestellten Rückruf, der anschließend benachrichtigt wird, wenn ein neuer Thread erstellt wird und wann ein solcher Thread gelöscht wird.
Syntax
NTSTATUS PsSetCreateThreadNotifyRoutineEx(
[in] PSCREATETHREADNOTIFYTYPE NotifyType,
[in] PVOID NotifyInformation
);
Parameter
[in] NotifyType
Ein PSCREATETHREADNOTIFYTYPE Wert, der den Typ der Threadbenachrichtigung angibt.
[in] NotifyInformation
Stellt die Adresse der Benachrichtigungsinformationen für den angegebenen Threadbenachrichtigungstyp bereit. Wenn NotifyTypePsCreateThreadNotifyNonSystem oder PsCreateThreadNotifySubsystems dann sollte NotifyInformation ein Zeiger auf die Implementierung PCREATE_THREAD_NOTIFY_ROUTINEdes Treibers sein.
Rückgabewert
PsSetCreateThreadNotifyRoutineEx gibt entweder STATUS_SUCCESS zurück oder gibt STATUS_INSUFFICIENT_RESOURCES zurück, wenn die Rückrufregistrierung fehlgeschlagen ist.
Bemerkungen
Treiber auf höchster Ebene können PsSetCreateThreadNotifyRoutineEx- aufrufen, um ihre Threaderstellungsbenachrichtigungsroutinen einzurichten.
Ein IFS- oder Systemprofiltreiber auf höchster Ebene kann z. B. einen solchen Threaderstellungsrückruf registrieren, um die systemweite Erstellung und Löschung von Threads im internen Zustand des Treibers nachzuverfolgen.
Wenn NotifyTypePsCreateThreadNotifyNonSystemist, unterscheidet sich die PsSetCreateThreadNotifyRoutine Ex-Routine von PsSetCreateThreadNotifyRoutine im Kontext, in dem der Rückruf ausgeführt wird. Mit PsSetCreateThreadNotifyRoutinewird der Rückruf im Erstellerthread ausgeführt. Mit PsSetCreateThreadNotifyRoutineExwird der Rückruf im neu erstellten Thread ausgeführt.
Ein Treiber muss alle Rückruffunktionen entfernen, die er registriert, bevor er entladen wird. Sie können den Rückruf entfernen, indem Sie die PsRemoveCreateThreadNotifyRoutine Routine aufrufen.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Verfügbar ab Windows 10. |
Zielplattform- | Universal |
Header- | ntddk.h (include Ntddk.h) |
Library | NtosKrnl.lib |
DLL- | NtosKrnl.exe |
IRQL- | PASSIVE_LEVEL |
Siehe auch
PsRemoveCreateThreadNotifyRoutine
PsSetCreateProcessNotifyRoutine