include: Add types for SetInformationJobObject.
This commit is contained in:
parent
6e32d18f9f
commit
868890fb72
|
@ -674,6 +674,7 @@ typedef struct _TIME_ZONE_INFORMATION{
|
|||
#define CREATE_SEPARATE_WOW_VDM 0x00000800
|
||||
#define CREATE_SHARED_WOW_VDM 0x00001000
|
||||
#define STACK_SIZE_PARAM_IS_A_RESERVATION 0x00010000
|
||||
#define CREATE_BREAKAWAY_FROM_JOB 0x01000000
|
||||
#define CREATE_DEFAULT_ERROR_MODE 0x04000000
|
||||
#define CREATE_NO_WINDOW 0x08000000
|
||||
#define PROFILE_USER 0x10000000
|
||||
|
|
|
@ -5392,6 +5392,96 @@ typedef enum _JOBOBJECTINFOCLASS
|
|||
MaxJobObjectInfoClass
|
||||
} JOBOBJECTINFOCLASS;
|
||||
|
||||
typedef struct _JOBOBJECT_BASIC_ACCOUNTING_INFORMATION {
|
||||
LARGE_INTEGER TotalUserTime;
|
||||
LARGE_INTEGER TotalKernelTime;
|
||||
LARGE_INTEGER ThisPeriodTotalUserTime;
|
||||
LARGE_INTEGER ThisPeriodTotalKernelTime;
|
||||
DWORD TotalPageFaultCount;
|
||||
DWORD TotalProcesses;
|
||||
DWORD ActiveProcesses;
|
||||
DWORD TotalTerminatedProcesses;
|
||||
} JOBOBJECT_BASIC_ACCOUNTING_INFORMATION, *PJOBOBJECT_BASIC_ACCOUNTING_INFORMATION;
|
||||
|
||||
typedef struct _JOBOBJECT_BASIC_LIMIT_INFORMATION {
|
||||
LARGE_INTEGER PerProcessUserTimeLimit;
|
||||
LARGE_INTEGER PerJobUserTimeLimit;
|
||||
DWORD LimitFlags;
|
||||
SIZE_T MinimumWorkingSetSize;
|
||||
SIZE_T MaximumWorkingSetSize;
|
||||
DWORD ActiveProcessLimit;
|
||||
ULONG_PTR Affinity;
|
||||
DWORD PriorityClass;
|
||||
DWORD SchedulingClass;
|
||||
} JOBOBJECT_BASIC_LIMIT_INFORMATION, *PJOBOBJECT_BASIC_LIMIT_INFORMATION;
|
||||
|
||||
typedef struct _JOBOBJECT_BASIC_PROCESS_ID_LIST {
|
||||
DWORD NumberOfAssignedProcesses;
|
||||
DWORD NumberOfProcessIdsInList;
|
||||
ULONG_PTR ProcessIdList[1];
|
||||
} JOBOBJECT_BASIC_PROCESS_ID_LIST, *PJOBOBJECT_BASIC_PROCESS_ID_LIST;
|
||||
|
||||
typedef struct _JOBOBJECT_BASIC_UI_RESTRICTIONS {
|
||||
DWORD UIRestrictionsClass;
|
||||
} JOBOBJECT_BASIC_UI_RESTRICTIONS, *PJOBOBJECT_BASIC_UI_RESTRICTIONS;
|
||||
|
||||
typedef struct _JOBOBJECT_SECURITY_LIMIT_INFORMATION {
|
||||
DWORD SecurityLimitFlags;
|
||||
HANDLE JobToken;
|
||||
PTOKEN_GROUPS SidsToDisable;
|
||||
PTOKEN_PRIVILEGES PrivilegesToDelete;
|
||||
PTOKEN_GROUPS RestrictedSids;
|
||||
} JOBOBJECT_SECURITY_LIMIT_INFORMATION, *PJOBOBJECT_SECURITY_LIMIT_INFORMATION;
|
||||
|
||||
typedef struct _JOBOBJECT_END_OF_JOB_TIME_INFORMATION {
|
||||
DWORD EndOfJobTimeAction;
|
||||
} JOBOBJECT_END_OF_JOB_TIME_INFORMATION, PJOBOBJECT_END_OF_JOB_TIME_INFORMATION;
|
||||
|
||||
typedef struct _JOBOBJECT_ASSOCIATE_COMPLETION_PORT {
|
||||
PVOID CompletionKey;
|
||||
HANDLE CompletionPort;
|
||||
} JOBOBJECT_ASSOCIATE_COMPLETION_PORT, *PJOBOBJECT_ASSOCIATE_COMPLETION_PORT;
|
||||
|
||||
#define JOB_OBJECT_MSG_END_OF_JOB_TIME 1
|
||||
#define JOB_OBJECT_MSG_END_OF_PROCESS_TIME 2
|
||||
#define JOB_OBJECT_MSG_ACTIVE_PROCESS_LIMIT 3
|
||||
#define JOB_OBJECT_MSG_ACTIVE_PROCESS_ZERO 4
|
||||
#define JOB_OBJECT_MSG_NEW_PROCESS 6
|
||||
#define JOB_OBJECT_MSG_EXIT_PROCESS 7
|
||||
#define JOB_OBJECT_MSG_ABNORMAL_EXIT_PROCESS 8
|
||||
#define JOB_OBJECT_MSG_PROCESS_MEMORY_LIMIT 9
|
||||
#define JOB_OBJECT_MSG_JOB_MEMORY_LIMIT 10
|
||||
|
||||
typedef struct JOBOBJECT_BASIC_AND_IO_ACCOUNTING_INFORMATION {
|
||||
JOBOBJECT_BASIC_ACCOUNTING_INFORMATION BasicInfo;
|
||||
IO_COUNTERS IoInfo;
|
||||
} JOBOBJECT_BASIC_AND_IO_ACCOUNTING_INFORMATION, *PJOBOBJECT_BASIC_AND_IO_ACCOUNTING_INFORMATION;
|
||||
|
||||
typedef struct _JOBOBJECT_EXTENDED_LIMIT_INFORMATION {
|
||||
JOBOBJECT_BASIC_LIMIT_INFORMATION BasicLimitInformation;
|
||||
IO_COUNTERS IoInfo;
|
||||
SIZE_T ProcessMemoryLimit;
|
||||
SIZE_T JobMemoryLimit;
|
||||
SIZE_T PeakProcessMemoryUsed;
|
||||
SIZE_T PeakJobMemoryUsed;
|
||||
} JOBOBJECT_EXTENDED_LIMIT_INFORMATION, *PJOBOBJECT_EXTENDED_LIMIT_INFORMATION;
|
||||
|
||||
#define JOB_OBJECT_LIMIT_WORKINGSET 0x00000001
|
||||
#define JOB_OBJECT_LIMIT_PROCESS_TIME 0x00000002
|
||||
#define JOB_OBJECT_LIMIT_JOB_TIME 0x00000004
|
||||
#define JOB_OBJECT_LIMIT_ACTIVE_PROCESS 0x00000008
|
||||
#define JOB_OBJECT_LIMIT_AFFINITY 0x00000010
|
||||
#define JOB_OBJECT_LIMIT_PRIORITY_CLASS 0x00000020
|
||||
#define JOB_OBJECT_LIMIT_PRESERVE_JOB_TIME 0x00000040
|
||||
#define JOB_OBJECT_LIMIT_SCHEDULING_CLASS 0x00000080
|
||||
#define JOB_OBJECT_LIMIT_PROCESS_MEMORY 0x00000100
|
||||
#define JOB_OBJECT_LIMIT_JOB_MEMORY 0x00000200
|
||||
#define JOB_OBJECT_LIMIT_DIE_ON_UNHANDLED_EXCEPTION 0x00000400
|
||||
#define JOB_OBJECT_LIMIT_BREAKAWAY_OK 0x00000800
|
||||
#define JOB_OBJECT_LIMIT_SILENT_BREAKAWAY_OK 0x00001000
|
||||
#define JOB_OBJECT_LIMIT_KILL_ON_JOB_CLOSE 0x00002000
|
||||
#define JOB_OBJECT_LIMIT_SUBSET_AFFINITY 0x00004000
|
||||
|
||||
typedef enum _LOGICAL_PROCESSOR_RELATIONSHIP
|
||||
{
|
||||
RelationProcessorCore = 0,
|
||||
|
|
Loading…
Reference in New Issue