TerminateJobObject-Funktion (jobapi2.h)
Beendet alle Prozesse, die derzeit dem Auftrag zugeordnet sind. Wenn der Auftrag geschachtelt ist, beendet diese Funktion alle Prozesse, die dem Auftrag derzeit zugeordnet sind, sowie alle untergeordneten Aufträge in der Hierarchie.
Syntax
BOOL TerminateJobObject(
[in] HANDLE hJob,
[in] UINT uExitCode
);
Parameter
[in] hJob
Ein Handle für den Auftrag, dessen Prozesse beendet werden. Die CreateJobObject- oder OpenJobObject-Funktion gibt dieses Handle zurück. Dieses Handle muss über das zugriffsrecht JOB_OBJECT_TERMINATE verfügen. Weitere Informationen finden Sie unter Auftragsobjektsicherheit und Zugriffsrechte.
Das Handle für jeden Prozess im Auftragsobjekt muss über das zugriffsrecht PROCESS_TERMINATE verfügen. Weitere Informationen finden Sie unter Prozesssicherheit und Zugriffsrechte.
[in] uExitCode
Der Exitcode, der von allen Prozessen und Threads im Auftragsobjekt verwendet werden soll. Verwenden Sie die GetExitCodeProcess-Funktion , um den Exitwert jedes Prozesses abzurufen. Verwenden Sie die GetExitCodeThread-Funktion , um den Exitwert jedes Threads abzurufen.
Rückgabewert
Wenn die Funktion erfolgreich ist, ist der Rückgabewert ungleich Null.
Wenn die Funktion fehlerhaft ist, ist der Rückgabewert null. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.
Hinweise
Es ist nicht möglich, dass einer der mit dem Auftrag verbundenen Prozesse die Beendigung aufschieben oder behandeln kann. Es ist so, als ob TerminateProcess für jeden Prozess aufgerufen würde, der dem Auftrag zugeordnet ist.
Durch das Beenden eines geschachtelten Auftrags werden zusätzlich alle untergeordneten Auftragsobjekte beendet. Ressourcen, die von den beendeten Aufträgen verwendet werden, werden in der übergeordneten Auftragskette in der Hierarchie in Rechnung gestellt.
Um eine Anwendung zu kompilieren, die diese Funktion verwendet, definieren Sie _WIN32_WINNT als 0x0500 oder höher. Weitere Informationen finden Sie unter Verwenden der Windows-Header.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows XP [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2003 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | jobapi2.h (einschließlich Windows.h, Jobapi2.h) |
Bibliothek | Kernel32.lib |
DLL | Kernel32.dll |