GetConsoleProcessList

現在のコンソールにアタッチされているプロセスのリストを取得する GetConsoleProcessList 関数のリファレンス情報を参照。

GetConsoleProcessList lpdwProcessList, dwProcessCount

lpdwProcessList : [var] 成功時にプロセス識別子の配列を受け取るバッファへのポインタ。これは有効なバッファでなければならず、`NULL` を指定できない。バッファには少なくとも 1 つのプロセス ID を受け取るためのスペースが必要である。
dwProcessCount : [int] *lpdwProcessList* バッファに格納できるプロセス識別子の最大数。0 より大きくなければならない。

(プラグイン / モジュール : kernel32.dll)

解説

現在のコンソールにアタッチされているプロセスのリストを取得する GetConsoleProcessList 関数のリファレンス情報を参照。

[戻り値]
関数が成功した場合、戻り値は *dwProcessCount* 以下であり、*lpdwProcessList*
バッファに格納されたプロセス識別子の数を表す。バッファがすべての有効なプロセス識別子を保持するには小さすぎる場合、戻り値は必要な配列要素数となる。この場合、関数はバッファに識別子を格納していない。この状況では戻り値を使ってリスト全体を格納できる十分な大きさのバッファを確保し、関数を再度呼び出す。戻り値が
0 の場合、すべてのコンソールには関連付けられたプロセスが少なくとも 1 つあるため、関数は失敗している。拡張エラー情報を取得するには
[**GetLastError**](/windows/win32/api/errhandlingapi/nf-errhandlingapi-getlasterror)
を呼ぶ。`NULL` のプロセスリストが渡された場合、またはプロセス数が 0 の場合、呼び出しは 0 を返し、`GetLastError`
は `ERROR_INVALID_PARAMETER` を返す。この関数を呼ぶ際は少なくとも 1
要素のバッファを指定する。戻りコードが指定したバッファの長さより大きい場合は、より大きなバッファを確保して再度呼び出す。

[備考]
この関数を使うアプリケーションをコンパイルするには、**\_WIN32\_WINNT** を 0x0501 以降として定義する。詳細は
[Using the Windows
Headers](/windows/win32/winprog/using-the-windows-headers)
を参照。[!INCLUDE
[no-vt-equiv-local-context](./includes/no-vt-equiv-local-context.md)]

情報

プラグイン / モジュールkernel32.dll
バージョン1.0
作成日2026/04/16
著作者IronHSP / CsWin32 bridge
URLhttps://github.com/inovia/IronHSP
備考Win32 API の kernel32.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。
タイプ拡張命令
グループWin32API
対応環境
  • Windows 版 HSP
hs ファイルhsphelp\win32_kernel32_gen2.hs