BOOL EnumProcesses( DWORD *ProcessIDs, DWORD ProcessIDSize, DWORD *ReturnSize);
引数の意味は以下の通り。
| ProcessIDs | (OUT) | 列挙されたプロセスIDの配列。 |
| ProcessIDSize | (IN) | ProcessIDsのサイズ。 |
| ReturnSize | (OUT) | ProcessIDsに設定されたデータのサイズ、またはProcessIDsに必要なサイズ。 |
戻り値は、関数の実行に成功したか否かを表す真偽値である。
/* 現在起動しているプロセスのIDの一覧を表示 */
void DispProcessIDs()
{
DWORD ProcessIDs[1000]; /* プロセスIDの一覧 */
DWORD ProcessNum; /* 取得したプロセスIDの数 */
DWORD ReturnSize; /* プロセスID一覧の取得結果のサイズ */
DWORD i;
/* プロセスIDの一覧と数を取得 */
EnumProcesses(ProcessIDs, sizeof(ProcessIDs), &ReturnSize);
ProcessNum = ReturnSize / sizeof(DWORD);
/* 取得結果の表示 */
for(i=0; i<ProcessNum; i++) {
printf("%x\n", ProcessIDs[i]);
}
}