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

クエリを実行する制限の情報クラス。 このパラメーターには、次の値のいずれかを指定できます。

説明
JobObjectBasicAccountingInformation
1
lpJobObjectInfo パラメーターは、JOBOBJECT_BASIC_ACCOUNTING_INFORMATION構造体へのポインターです。
JobObjectBasicAndIoAccountingInformation
8
lpJobObjectInfo パラメーターは、JOBOBJECT_BASIC_AND_IO_ACCOUNTING_INFORMATION構造体へのポインターです。
JobObjectBasicLimitInformation
2
lpJobObjectInfo パラメーターは、JOBOBJECT_BASIC_LIMIT_INFORMATION構造体へのポインターです。
JobObjectBasicProcessIdList
3
lpJobObjectInfo パラメーターは、JOBOBJECT_BASIC_PROCESS_ID_LIST構造体へのポインターです。
JobObjectBasicUIRestrictions
4
lpJobObjectInfo パラメーターは、JOBOBJECT_BASIC_UI_RESTRICTIONS構造体へのポインターです。
JobObjectCpuRateControlInformation
15
lpJobObjectInfo パラメーターは、JOBOBJECT_CPU_RATE_CONTROL_INFORMATION構造体へのポインターです。

Windows 7、Windows Server 2008 R2、Windows Server 2008、Windows Vista、Windows Server 2003、Windows XP: このフラグはサポートされていません。

JobObjectEndOfJobTimeInformation
6
lpJobObjectInfo パラメーターは、JOBOBJECT_END_OF_JOB_TIME_INFORMATION構造体へのポインターです。
JobObjectExtendedLimitInformation
9
lpJobObjectInfo パラメーターは、JOBOBJECT_EXTENDED_LIMIT_INFORMATION構造体へのポインターです。
JobObjectGroupInformation
11
lpJobObjectInfo パラメーターは、ジョブが現在割り当てられているプロセッサ グループの一覧を受け取るバッファーへのポインターです。 lpReturnLength パラメーターが指す変数は、グループ データのサイズに設定されます。 この値を で sizeof(USHORT) 除算して、グループの数を決定します。

Windows Server 2008、Windows Vista、Windows Server 2003、Windows XP: このフラグはサポートされていません。

JobObjectGroupInformationEx
14
lpJobObjectInfo パラメーターは、ジョブが現在割り当てられているプロセッサ グループ内のジョブのアフィニティを示すGROUP_AFFINITY構造体の配列を受け取るバッファーへのポインターです。 lpReturnLength パラメーターが指す変数は、グループ アフィニティ データのサイズに設定されます。 この値を で sizeof(GROUP_AFFINITY) 除算して、グループの数を決定します。

Windows 7、Windows Server 2008 R2、Windows Server 2008、Windows Vista、Windows Server 2003、Windows XP: このフラグはサポートされていません。

JobObjectLimitViolationInformation
13
lpJobObjectInfo パラメーターは、JOBOBJECT_LIMIT_VIOLATION_INFORMATION構造体へのポインターです。

Windows 7、Windows Server 2008 R2、Windows Server 2008、Windows Vista、Windows Server 2003、Windows XP: このフラグはサポートされていません。

JobObjectLimitViolationInformation2
34
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: このフラグはサポートされていません。

JobObjectNetRateControlInformation
32
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: このフラグはサポートされていません。

JobObjectNotificationLimitInformation
12
lpJobObjectInfo パラメーターは、JOBOBJECT_NOTIFICATION_LIMIT_INFORMATION構造体へのポインターです。

Windows 7、Windows Server 2008 R2、Windows Server 2008、Windows Vista、Windows Server 2003、Windows XP: このフラグはサポートされていません。

JobObjectNotificationLimitInformation2
33
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: このフラグはサポートされていません。

JobObjectSecurityLimitInformation
5
このフラグはサポートされていません。 アプリケーションでは、プロセスごとに個別にセキュリティ制限を設定する必要があります。 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

JOBOBJECT_SECURITY_LIMIT_INFORMATION

ジョブ オブジェクト

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

SetInformationJobObject