Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die ZwTerminateProcess Routine beendet einen Prozess und alle zugehörigen Threads.
Syntax
NTSYSAPI NTSTATUS ZwTerminateProcess(
[in, optional] HANDLE ProcessHandle,
[in] NTSTATUS ExitStatus
);
Parameter
[in, optional] ProcessHandle
Ein Handle für das Prozessobjekt, das den zu beendenden Prozess darstellt.
[in] ExitStatus
Ein NTSTATUS-Wert, den das Betriebssystem als endgültigen Status für den Prozess und die einzelnen Threads verwendet.
Rückgabewert
ZwTerminateProcess gibt STATUS_SUCCESS zurück, wenn der Vorgang erfolgreich ist. Weitere Rückgabewerte sind:
| Rückgabecode | Beschreibung |
|---|---|
| STATUS_OBJECT_TYPE_MISMATCH | Das angegebene Handle ist kein Prozesshandle. |
| STATUS_INVALID_HANDLE | Der angegebene Handle ist ungültig. |
| STATUS_ACCESS_DENIED | Der Treiber kann nicht auf das angegebene Prozessobjekt zugreifen. |
| STATUS_PROCESS_IS_TERMINATING | Der angegebene Prozess wird bereits beendet. |
Wenn der Aufrufer den aktuellen Prozess im ProcessHandle--Parameter angibt, gibt ZwTerminateProcess- nicht zurück.
Bemerkungen
Um ein Prozesshandle abzurufen, das ein Treiber für den ProcessHandle Parameter angeben kann, kann der Treiber ZwOpenProcessaufrufen. Das Handle muss ein Kernelhandlesein, ein Handle, auf das nur im Kernelmodus zugegriffen werden kann. Ein Handle ist ein Kernelhandle, wenn es mit dem OBJ_KERNEL_HANDLE Flag erstellt wird. Weitere Informationen finden Sie unter InitializeObjectAttributes.
Treiber dürfen den aktuellen Prozess nicht angeben, wenn Ressourcen nicht aus dem Kernelstapel freigegeben wurden, da das Betriebssystem den Kernelstapel für den aufrufenden Thread nicht entspannt.
Wenn der Aufruf dieser Funktion im Benutzermodus erfolgt, sollten Sie den Namen "NtTerminateProcess" anstelle von "ZwTerminateProcess" verwenden.
Bei Aufrufen von Kernelmodustreibern können sich die NtXxx und ZwXxx- Versionen einer Windows Native System Services-Routine anders verhalten, wie sie Eingabeparameter behandeln und interpretieren. Weitere Informationen zur Beziehung zwischen den NtXxx und ZwXxx- Versionen einer Routine finden Sie unter Using Nt and Zw Versions of the Native System Services Routines.
Anforderungen
| Anforderung | Wert |
|---|---|
| Zielplattform- | Universal |
| Header- | ntddk.h (include Ntddk.h) |
| Library | NtosKrnl.lib |
| DLL- | NtosKrnl.exe |
| IRQL- | PASSIVE_LEVEL |
| DDI-Complianceregeln | HwStorPortProhibitedDIs(storport), PowerIrpDDis(wdm) |
Siehe auch
Verwenden von Nt- und Zw-Versionen der systemeigenen Systemdienste-Routinen