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 以不接收這項資訊。
傳回值
如果函式成功,則傳回非零的值。
如果此函式失敗,則傳回值為零。 若要取得擴充的錯誤資訊,請呼叫 GetLastError。
備註
使用 QueryInformationJobObject 來取得目前的限制並加以修改。 使用 SetInformationJobObject 函式來設定新的限制。
若要編譯使用此函式的應用程式,請將 _WIN32_WINNT 定義為0x0500或更新版本。 如需詳細資訊,請參閱 使用 Windows 標頭。
需求
最低支援的用戶端 | Windows XP [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2003 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | jobapi2.h (包含 Windows.h) |
程式庫 | 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