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

Siehe auch

AttachConsole

Konsolenfunktionen