QueryInformationJobObject 関数 (jobapi2.h)
ジョブ オブジェクトから制限とジョブの状態情報を取得します。
構文
BOOL QueryInformationJobObject(
[in, optional] HANDLE hJob,
[in] JOBOBJECTINFOCLASS JobObjectInformationClass,
[out] LPVOID lpJobObjectInformation,
[in] DWORD cbJobObjectInformationLength,
[out, optional] LPDWORD lpReturnLength
);
パラメーター
[in, optional] hJob
情報のクエリを実行するジョブへのハンドル。 CreateJobObject 関数または OpenJobObject 関数は、このハンドルを返します。 ハンドルには 、JOB_OBJECT_QUERY アクセス権が必要です。 詳細については、「 ジョブ オブジェクトのセキュリティとアクセス権」を参照してください。
この値が NULL で、呼び出し元プロセスがジョブに関連付けられている場合は、呼び出し元プロセスに関連付けられているジョブが使用されます。 ジョブが入れ子になっている場合は、呼び出し元プロセスの即時ジョブが使用されます。
[in] JobObjectInformationClass
クエリを実行する制限の情報クラス。 このパラメーターには、次の値のいずれかを指定できます。
値 | 説明 |
---|---|
|
lpJobObjectInfo パラメーターは、JOBOBJECT_BASIC_ACCOUNTING_INFORMATION構造体へのポインターです。 |
|
lpJobObjectInfo パラメーターは、JOBOBJECT_BASIC_AND_IO_ACCOUNTING_INFORMATION構造体へのポインターです。 |
|
lpJobObjectInfo パラメーターは、JOBOBJECT_BASIC_LIMIT_INFORMATION構造体へのポインターです。 |
|
lpJobObjectInfo パラメーターは、JOBOBJECT_BASIC_PROCESS_ID_LIST構造体へのポインターです。 |
|
lpJobObjectInfo パラメーターは、JOBOBJECT_BASIC_UI_RESTRICTIONS構造体へのポインターです。 |
|
lpJobObjectInfo パラメーターは、JOBOBJECT_CPU_RATE_CONTROL_INFORMATION構造体へのポインターです。
Windows 7、Windows Server 2008 R2、Windows Server 2008、Windows Vista、Windows Server 2003、Windows XP: このフラグはサポートされていません。 |
|
lpJobObjectInfo パラメーターは、JOBOBJECT_END_OF_JOB_TIME_INFORMATION構造体へのポインターです。 |
|
lpJobObjectInfo パラメーターは、JOBOBJECT_EXTENDED_LIMIT_INFORMATION構造体へのポインターです。 |
|
lpJobObjectInfo パラメーターは、ジョブが現在割り当てられているプロセッサ グループの一覧を受け取るバッファーへのポインターです。 lpReturnLength パラメーターが指す変数は、グループ データのサイズに設定されます。 この値を で sizeof(USHORT) 除算して、グループの数を決定します。
Windows Server 2008、Windows Vista、Windows Server 2003、Windows XP: このフラグはサポートされていません。 |
|
lpJobObjectInfo パラメーターは、ジョブが現在割り当てられているプロセッサ グループ内のジョブのアフィニティを示すGROUP_AFFINITY構造体の配列を受け取るバッファーへのポインターです。 lpReturnLength パラメーターが指す変数は、グループ アフィニティ データのサイズに設定されます。 この値を で sizeof(GROUP_AFFINITY) 除算して、グループの数を決定します。
Windows 7、Windows Server 2008 R2、Windows Server 2008、Windows Vista、Windows Server 2003、Windows XP: このフラグはサポートされていません。 |
|
lpJobObjectInfo パラメーターは、JOBOBJECT_LIMIT_VIOLATION_INFORMATION構造体へのポインターです。
Windows 7、Windows Server 2008 R2、Windows Server 2008、Windows Vista、Windows Server 2003、Windows XP: このフラグはサポートされていません。 |
|
lpJobObjectInfo パラメーターは、JOBOBJECT_LIMIT_VIOLATION_INFORMATION_2構造体へのポインターです。
Windows 8.1、Windows Server 2012 R2、Windows 8、Windows Server 2012、Windows 7、Windows Server 2008 R2、Windows Server 2008、Windows Vista、Windows Server 2003、Windows XP: このフラグはサポートされていません。 |
|
lpJobObjectInfo パラメーターは、JOBOBJECT_NET_RATE_CONTROL_INFORMATION構造体へのポインターです。
Windows 8.1、Windows Server 2012 R2、Windows 8、Windows Server 2012、Windows 7、Windows Server 2008 R2、Windows Server 2008、Windows Vista、Windows Server 2003、Windows XP: このフラグはサポートされていません。 |
|
lpJobObjectInfo パラメーターは、JOBOBJECT_NOTIFICATION_LIMIT_INFORMATION構造体へのポインターです。
Windows 7、Windows Server 2008 R2、Windows Server 2008、Windows Vista、Windows Server 2003、Windows XP: このフラグはサポートされていません。 |
|
lpJobObjectInfo パラメーターは、JOBOBJECT_NOTIFICATION_LIMIT_INFORMATION_2構造体へのポインターです。
Windows 8.1、Windows Server 2012 R2、Windows 8、Windows Server 2012、Windows 7、Windows Server 2008 R2、Windows Server 2008、Windows Vista、Windows Server 2003、Windows XP: このフラグはサポートされていません。 |
|
このフラグはサポートされていません。 アプリケーションでは、プロセスごとに個別にセキュリティ制限を設定する必要があります。 Windows Server 2003 および Windows XP: lpJobObjectInfo パラメーターは、JOBOBJECT_SECURITY_LIMIT_INFORMATION構造体へのポインターです。 |
[out] lpJobObjectInformation
制限またはジョブの状態情報。 このデータの形式は 、JobObjectInfoClass パラメーターの値によって異なります。
[in] cbJobObjectInformationLength
クエリ対象のジョブ情報の数 (バイト単位)。 この値は 、JobObjectInfoClass パラメーターの値によって異なります。
[out, optional] lpReturnLength
lpJobObjectInfo パラメーターによって指される構造体に書き込まれたデータの長さを受け取る変数へのポインター。 この情報を受け取らない場合は NULL を指定します 。
戻り値
関数が成功すると、戻り値は 0 以外になります。
関数が失敗した場合は、0 を返します。 詳細なエラー情報を得るには、GetLastError を呼び出します。
解説
QueryInformationJobObject を使用して現在の制限を取得し、変更します。 SetInformationJobObject 関数を使用して、新しい制限を設定します。
この関数を使用するアプリケーションをコンパイルするには、 _WIN32_WINNTを 0x0500 以降として定義します。 詳細については、「 Windows ヘッダーの使用」を参照してください。
要件
サポートされている最小のクライアント | Windows XP (デスクトップ アプリのみ) |
サポートされている最小のサーバー | Windows Server 2003 (デスクトップ アプリのみ) |
対象プラットフォーム | Windows |
ヘッダー | jobapi2.h (Windows.h を含む) |
Library | Kernel32.lib |
[DLL] | Kernel32.dll |
関連項目
JOBOBJECT_BASIC_ACCOUNTING_INFORMATION
JOBOBJECT_BASIC_AND_IO_ACCOUNTING_INFORMATION
JOBOBJECT_BASIC_LIMIT_INFORMATION
JOBOBJECT_BASIC_PROCESS_ID_LIST
JOBOBJECT_BASIC_UI_RESTRICTIONS
JOBOBJECT_CPU_RATE_CONTROL_INFORMATION
JOBOBJECT_END_OF_JOB_TIME_INFORMATION
JOBOBJECT_EXTENDED_LIMIT_INFORMATION
JOBOBJECT_LIMIT_VIOLATION_INFORMATION
JOBOBJECT_LIMIT_VIOLATION_INFORMATION_2
JOBOBJECT_NET_RATE_CONTROL_INFORMATION
JOBOBJECT_NOTIFICATION_LIMIT_INFORMATION
JOBOBJECT_NOTIFICATION_LIMIT_INFORMATION_2