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]); } }