PsSetCreateThreadNotifyRoutineEx-Funktion (ntddk.h)
Die PsSetCreateThreadNotifyRoutineEx-Routine registriert einen vom Treiber bereitgestellten Rückruf, der anschließend benachrichtigt wird, wenn ein neuer Thread erstellt und 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
Gibt die Adresse der Benachrichtigungsinformationen für den angegebenen Threadbenachrichtigungstyp an. Wenn NotifyTypepsCreateThreadNotifyNonSystem oder PsCreateThreadNotifySubsystems ist, sollte NotifyInformation ein Zeiger auf die Implementierung von PCREATE_THREAD_NOTIFY_ROUTINE des Treibers sein.
Rückgabewert
PsSetCreateThreadNotifyRoutineEx gibt entweder STATUS_SUCCESS oder STATUS_INSUFFICIENT_RESOURCES zurück, wenn die Rückrufregistrierung fehlgeschlagen ist.
Hinweise
Treiber der obersten Ebene können PsSetCreateThreadNotifyRoutineEx aufrufen, um ihre Threaderstellungsroutinen einzurichten.
Beispielsweise kann ein IFS- oder Systemprofiltreiber der obersten Ebene einen solchen Threaderstellungsrückruf registrieren, um die systemweite Erstellung und Löschung von Threads anhand des internen Zustands des Treibers nachzuverfolgen.
Wenn NotifyTypepsCreateThreadNotifyNonSystem ist, unterscheidet sich die PsSetCreateThreadNotifyRoutineEx-Routine von PsSetCreateThreadNotifyRoutine in dem Kontext, in dem der Rückruf ausgeführt wird. Mit PsSetCreateThreadNotifyRoutine wird der Rückruf im Erstellerthread ausgeführt. Mit PsSetCreateThreadNotifyRoutineEx wird der Rückruf für den 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 |
---|---|
Unterstützte Mindestversion (Client) | Ab Windows 10 verfügbar. |
Zielplattform | Universell |
Header | ntddk.h (include Ntddk.h) |
Bibliothek | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |
Weitere Informationen
PsRemoveCreateThreadNotifyRoutine
PsSetCreateProcessNotifyRoutine