forked from Mirrors/wine-wine
include: Add types for SetInformationJobObject.
parent
6e32d18f9f
commit
868890fb72
|
@ -674,6 +674,7 @@ typedef struct _TIME_ZONE_INFORMATION{
|
||||||
#define CREATE_SEPARATE_WOW_VDM 0x00000800
|
#define CREATE_SEPARATE_WOW_VDM 0x00000800
|
||||||
#define CREATE_SHARED_WOW_VDM 0x00001000
|
#define CREATE_SHARED_WOW_VDM 0x00001000
|
||||||
#define STACK_SIZE_PARAM_IS_A_RESERVATION 0x00010000
|
#define STACK_SIZE_PARAM_IS_A_RESERVATION 0x00010000
|
||||||
|
#define CREATE_BREAKAWAY_FROM_JOB 0x01000000
|
||||||
#define CREATE_DEFAULT_ERROR_MODE 0x04000000
|
#define CREATE_DEFAULT_ERROR_MODE 0x04000000
|
||||||
#define CREATE_NO_WINDOW 0x08000000
|
#define CREATE_NO_WINDOW 0x08000000
|
||||||
#define PROFILE_USER 0x10000000
|
#define PROFILE_USER 0x10000000
|
||||||
|
|
|
@ -5392,6 +5392,96 @@ typedef enum _JOBOBJECTINFOCLASS
|
||||||
MaxJobObjectInfoClass
|
MaxJobObjectInfoClass
|
||||||
} JOBOBJECTINFOCLASS;
|
} 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
|
typedef enum _LOGICAL_PROCESSOR_RELATIONSHIP
|
||||||
{
|
{
|
||||||
RelationProcessorCore = 0,
|
RelationProcessorCore = 0,
|
||||||
|
|
Loading…
Reference in New Issue