GetConsoleProcessList-Funktion
Ruft eine Liste der Prozesse ab, die an die aktuelle Konsole angefügt sind.
Syntax
DWORD WINAPI GetConsoleProcessList(
_Out_ LPDWORD lpdwProcessList,
_In_ DWORD dwProcessCount
);
Parameter
lpdwProcessList [out]
Ein Zeiger auf einen Puffer, der nach Erfolg ein Array von Prozessbezeichnern empfängt. Dies muss ein gültiger Puffer sein und darf nicht sein NULL
. Der Puffer muss über Speicherplatz verfügen, um mindestens 1 zurückgegebene Prozess-ID zu empfangen.
dwProcessCount [in]
Die maximale Anzahl von Prozessbezeichnern, die im lpdwProcessList-Puffer gespeichert werden können. Dieser Wert muss größer als 0 sein.
Rückgabewert
Wenn die Funktion erfolgreich ist, ist der Rückgabewert kleiner oder gleich dwProcessCount und stellt die Anzahl der Prozessbezeichner dar, die im lpdwProcessList-Puffer gespeichert sind.
Wenn der Puffer zu klein ist, um alle gültigen Prozessbezeichner zu speichern, ist der Rückgabewert die erforderliche Anzahl von Arrayelementen. Die Funktion enthält keine Bezeichner im Puffer. Verwenden Sie in diesem Fall den Rückgabewert, um einen Puffer zuzuweisen, der groß genug ist, um die gesamte Liste zu speichern und die Funktion erneut aufzurufen.
Wenn der Rückgabewert null ist, ist die Funktion fehlgeschlagen, da jeder Konsole mindestens ein Prozess zugeordnet ist. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.
Wenn eine NULL
Prozessliste bereitgestellt wurde oder die Prozessanzahl 0 war, gibt der Anruf 0 zurück und GetLastError
gibt zurück ERROR_INVALID_PARAMETER
. Geben Sie einen Puffer von mindestens einem Element an, um diese Funktion aufzurufen. Weisen Sie einen größeren Puffer zu, und rufen Sie ihn erneut auf, wenn der Rückgabecode größer als die Länge des bereitgestellten Puffers ist.
Hinweise
Um eine Anwendung zu kompilieren, die diese Funktion verwendet, definieren Sie _WIN32_WINNT als 0x0501 oder höher. Weitere Informationen finden Sie unter Verwenden der Windows-Header.
Tipp
Diese API wird nicht empfohlen und verfügt nicht über eine virtuelle Terminalentsprechung. Diese Entscheidung richtet die Windows-Plattform absichtlich mit anderen Betriebssystemen aus. Dieser Zustand ist nur für den lokalen Benutzer-, Sitzungs- und Berechtigungskontext relevant. Anwendungen, die über plattformübergreifende Dienstprogramme und Transporte wie SSH remoten, funktionieren möglicherweise nicht wie erwartet, wenn Sie diese API verwenden.
Anforderungen
Unterstützte Mindestversion (Client) | Windows XP [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2003 [nur Desktop-Apps] |
Header | ConsoleApi.h (über WinCon.h, Windows.h einschließen) |
Bibliothek | Kernel32.lib |
DLL | Kernel32.dll |