IsProcessInJob 関数 (jobapi.h)

指定したジョブでプロセスが実行されているかどうかを判断します。

構文

BOOL IsProcessInJob(
  [in]           HANDLE ProcessHandle,
  [in, optional] HANDLE JobHandle,
  [out]          PBOOL  Result
);

パラメーター

[in] ProcessHandle

テストするプロセスへのハンドル。 ハンドルには、PROCESS_QUERY_INFORMATIONまたはPROCESS_QUERY_LIMITED_INFORMATIONアクセス権が必要です。 詳細については、「 プロセス のセキュリティとアクセス権」を参照してください。

Windows Server 2003 および Windows XP: ハンドルには、PROCESS_QUERY_INFORMATIONアクセス権が必要です。

[in, optional] JobHandle

ジョブへのハンドル。 このパラメーターが NULL の場合、関数はプロセスが任意のジョブで実行されているかどうかをテストします。

このパラメーターが NULL でない場合、ハンドルにはJOB_OBJECT_QUERYアクセス権が必要です。 詳細については、「 ジョブ オブジェクトのセキュリティとアクセス権」を参照してください。

[out] Result

プロセスがジョブで実行されている場合は TRUE、それ以外の場合は FALSE を受け取る値へのポインター。

戻り値

関数が成功すると、戻り値は 0 以外になります。

関数が失敗した場合は、0 を返します。 詳細なエラー情報を得るには、GetLastError を呼び出します。

解説

アプリケーションは、ジョブ オブジェクトの名前がない限り、実行中のジョブ オブジェクトへのハンドルを取得できません。 ただし、アプリケーションは NULL を指定して QueryInformationJobObject 関数を呼び出して、ジョブ オブジェクトに関する情報を取得できます。

この関数を使用するアプリケーションをコンパイルするには、_WIN32_WINNTを 0x0501 以降として定義します。 詳細については、「 Windows ヘッダーの使用」を参照してください。

要件

要件
サポートされている最小のクライアント Windows XP (デスクトップ アプリのみ)
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
対象プラットフォーム Windows
ヘッダー jobapi.h
Library Kernel32.lib
[DLL] Kernel32.dll

関連項目

AssignProcessToJobObject

ジョブ オブジェクト

プロセス関数とスレッド関数

QueryInformationJobObject