Prozessenumeration
Alle Benutzer haben Lesezugriff auf die Liste der Prozesse im System, und es gibt eine Reihe verschiedener Funktionen, die die aktiven Prozesse auflisten. Welche Funktion Sie verwenden sollten, hängt von Faktoren wie der gewünschten Plattformunterstützung ab.
Die folgenden Funktionen werden verwendet, um Prozesse aufzuzählen.
| Funktion | BESCHREIBUNG |
|---|---|
| EnumProcesses | Ruft den Prozessbezeichner für jedes Prozessobjekt im System ab. |
| Process32First | Ruft Informationen zum ersten Prozess ab, der in einer Systemmomentaufnahme aufgetreten ist. |
| Process32Next | Ruft Informationen zum nächsten Prozess ab, der in einer Systemmomentaufnahme aufgezeichnet wird. |
| WTSEnumerateProcesses | Ruft Informationen zu den aktiven Prozessen auf dem angegebenen Terminalserver ab. |
Die Toolhilfefunktionen und EnumProcesses aufzählen den gesamten Prozess. Um die Prozesse aufzulisten, die in einem bestimmten Benutzerkonto ausgeführt werden, verwenden Sie WTSEnumerateProcesses, und filtern Sie nach der Benutzer-SID. Sie können nach der Sitzungs-ID filtern, um Prozesse auszublenden, die in anderen Terminalserversitzungen ausgeführt werden.
Sie können Prozesse auch unabhängig von der Enumerationsfunktion nach Benutzerkonto filtern, indem Sie OpenProcess, OpenProcessTokenund GetTokenInformation mit TokenUser aufrufen. Sie können jedoch keinen Prozess öffnen, der durch einen Sicherheitsdeskriptor geschützt ist, es sei denn, Ihnen wurde Zugriff gewährt.