- winnt.h : ULONG -> DWORD and UCHAR-> BYTE in several structures, update SLIST_HEADER and co, add proper packing of RTL_CRITICAL_SECTION, update IMAGE_AUX_SYMBOL, ReplacesCorHdrNumericDefines, IMAGE_COR20_HEADER, IMAGE_RESOURCE_DIRECTORY_ENTRY, IMAGE_RUNTIME_FUNCTION_ENTRY, SYSTEM_POWER_CAPABILITIES, ACTIVATION_CONTEXT_INFO_CLASS and HEAP_INFORMATION_CLASS, replace IMAGE_LOAD_CONFIG_DIRECTORY with IMAGE_LOAD_CONFIG_DIRECTORY{32,64} with the appropriate conditional and apply consistent formatting for the rest.

svn path=/branches/header-work/; revision=47245
This commit is contained in:
Amine Khaldi 2010-05-16 22:15:24 +00:00
parent 615d59ca2e
commit ac05d7c73c

View file

@ -3230,6 +3230,7 @@ typedef struct _TAPE_ERASE {
DWORD Type; DWORD Type;
BOOLEAN Immediate; BOOLEAN Immediate;
} TAPE_ERASE, *PTAPE_ERASE; } TAPE_ERASE, *PTAPE_ERASE;
typedef struct _TAPE_GET_DRIVE_PARAMETERS { typedef struct _TAPE_GET_DRIVE_PARAMETERS {
BOOLEAN ECC; BOOLEAN ECC;
BOOLEAN Compression; BOOLEAN Compression;
@ -3243,6 +3244,7 @@ typedef struct _TAPE_GET_DRIVE_PARAMETERS {
DWORD FeaturesHigh; DWORD FeaturesHigh;
DWORD EOTWarningZoneSize; DWORD EOTWarningZoneSize;
} TAPE_GET_DRIVE_PARAMETERS, *PTAPE_GET_DRIVE_PARAMETERS; } TAPE_GET_DRIVE_PARAMETERS, *PTAPE_GET_DRIVE_PARAMETERS;
typedef struct _TAPE_GET_MEDIA_PARAMETERS { typedef struct _TAPE_GET_MEDIA_PARAMETERS {
LARGE_INTEGER Capacity; LARGE_INTEGER Capacity;
LARGE_INTEGER Remaining; LARGE_INTEGER Remaining;
@ -3250,36 +3252,43 @@ typedef struct _TAPE_GET_MEDIA_PARAMETERS {
DWORD PartitionCount; DWORD PartitionCount;
BOOLEAN WriteProtected; BOOLEAN WriteProtected;
} TAPE_GET_MEDIA_PARAMETERS, *PTAPE_GET_MEDIA_PARAMETERS; } TAPE_GET_MEDIA_PARAMETERS, *PTAPE_GET_MEDIA_PARAMETERS;
typedef struct _TAPE_GET_POSITION { typedef struct _TAPE_GET_POSITION {
ULONG Type; ULONG Type;
ULONG Partition; ULONG Partition;
LARGE_INTEGER Offset; LARGE_INTEGER Offset;
} TAPE_GET_POSITION, *PTAPE_GET_POSITION; } TAPE_GET_POSITION, *PTAPE_GET_POSITION;
typedef struct _TAPE_PREPARE { typedef struct _TAPE_PREPARE {
DWORD Operation; DWORD Operation;
BOOLEAN Immediate; BOOLEAN Immediate;
} TAPE_PREPARE, *PTAPE_PREPARE; } TAPE_PREPARE, *PTAPE_PREPARE;
typedef struct _TAPE_SET_DRIVE_PARAMETERS { typedef struct _TAPE_SET_DRIVE_PARAMETERS {
BOOLEAN ECC; BOOLEAN ECC;
BOOLEAN Compression; BOOLEAN Compression;
BOOLEAN DataPadding; BOOLEAN DataPadding;
BOOLEAN ReportSetmarks; BOOLEAN ReportSetmarks;
ULONG EOTWarningZoneSize; DWORD EOTWarningZoneSize;
} TAPE_SET_DRIVE_PARAMETERS, *PTAPE_SET_DRIVE_PARAMETERS; } TAPE_SET_DRIVE_PARAMETERS, *PTAPE_SET_DRIVE_PARAMETERS;
typedef struct _TAPE_SET_MEDIA_PARAMETERS { typedef struct _TAPE_SET_MEDIA_PARAMETERS {
ULONG BlockSize; DWORD BlockSize;
} TAPE_SET_MEDIA_PARAMETERS,*PTAPE_SET_MEDIA_PARAMETERS; } TAPE_SET_MEDIA_PARAMETERS,*PTAPE_SET_MEDIA_PARAMETERS;
typedef struct _TAPE_SET_POSITION { typedef struct _TAPE_SET_POSITION {
DWORD Method; DWORD Method;
DWORD Partition; DWORD Partition;
LARGE_INTEGER Offset; LARGE_INTEGER Offset;
BOOLEAN Immediate; BOOLEAN Immediate;
} TAPE_SET_POSITION, *PTAPE_SET_POSITION; } TAPE_SET_POSITION, *PTAPE_SET_POSITION;
typedef struct _TAPE_WRITE_MARKS { typedef struct _TAPE_WRITE_MARKS {
DWORD Type; DWORD Type;
DWORD Count; DWORD Count;
BOOLEAN Immediate; BOOLEAN Immediate;
} TAPE_WRITE_MARKS, *PTAPE_WRITE_MARKS; } TAPE_WRITE_MARKS, *PTAPE_WRITE_MARKS;
typedef struct _TAPE_CREATE_PARTITION { typedef struct _TAPE_CREATE_PARTITION {
DWORD Method; DWORD Method;
DWORD Count; DWORD Count;
@ -3301,11 +3310,13 @@ typedef struct _MESSAGE_RESOURCE_ENTRY {
WORD Flags; WORD Flags;
BYTE Text[1]; BYTE Text[1];
} MESSAGE_RESOURCE_ENTRY, *PMESSAGE_RESOURCE_ENTRY; } MESSAGE_RESOURCE_ENTRY, *PMESSAGE_RESOURCE_ENTRY;
typedef struct _MESSAGE_RESOURCE_BLOCK { typedef struct _MESSAGE_RESOURCE_BLOCK {
DWORD LowId; DWORD LowId;
DWORD HighId; DWORD HighId;
DWORD OffsetToEntries; DWORD OffsetToEntries;
} MESSAGE_RESOURCE_BLOCK, *PMESSAGE_RESOURCE_BLOCK; } MESSAGE_RESOURCE_BLOCK, *PMESSAGE_RESOURCE_BLOCK;
typedef struct _MESSAGE_RESOURCE_DATA { typedef struct _MESSAGE_RESOURCE_DATA {
DWORD NumberOfBlocks; DWORD NumberOfBlocks;
MESSAGE_RESOURCE_BLOCK Blocks[1]; MESSAGE_RESOURCE_BLOCK Blocks[1];
@ -3337,12 +3348,19 @@ typedef struct _SINGLE_LIST_ENTRY {
#define _SLIST_HEADER_ #define _SLIST_HEADER_
#if defined(_WIN64) #if defined(_WIN64)
typedef struct _SLIST_ENTRY *PSLIST_ENTRY;
typedef struct DECLSPEC_ALIGN(16) _SLIST_ENTRY *PSLIST_ENTRY;
typedef struct DECLSPEC_ALIGN(16) _SLIST_ENTRY { typedef struct DECLSPEC_ALIGN(16) _SLIST_ENTRY {
PSLIST_ENTRY Next; PSLIST_ENTRY Next;
} SLIST_ENTRY; } SLIST_ENTRY;
typedef struct _SLIST_ENTRY32 {
DWORD Next;
} SLIST_ENTRY32, *PSLIST_ENTRY32;
typedef union DECLSPEC_ALIGN(16) _SLIST_HEADER { typedef union DECLSPEC_ALIGN(16) _SLIST_HEADER {
struct { _ANONYMOUS_STRUCT struct {
ULONGLONG Alignment; ULONGLONG Alignment;
ULONGLONG Region; ULONGLONG Region;
} DUMMYSTRUCTNAME; } DUMMYSTRUCTNAME;
@ -3363,24 +3381,47 @@ typedef union DECLSPEC_ALIGN(16) _SLIST_HEADER {
ULONGLONG Reserved:2; ULONGLONG Reserved:2;
ULONGLONG NextEntry:60; ULONGLONG NextEntry:60;
} Header16; } Header16;
struct {
ULONGLONG Depth:16;
ULONGLONG Sequence:48;
ULONGLONG HeaderType:1;
ULONGLONG Reserved:3;
ULONGLONG NextEntry:60;
} HeaderX64;
} SLIST_HEADER, *PSLIST_HEADER; } SLIST_HEADER, *PSLIST_HEADER;
typedef union _SLIST_HEADER32{
ULONGLONG Alignment;
_ANONYMOUS_STRUCT struct {
SLIST_ENTRY32 Next;
WORD Depth;
WORD Sequence;
} DUMMYSTRUCTNAME;
} SLIST_HEADER32, *PSLIST_HEADER32;
#else #else
#define SLIST_ENTRY SINGLE_LIST_ENTRY #define SLIST_ENTRY SINGLE_LIST_ENTRY
#define _SLIST_ENTRY _SINGLE_LIST_ENTRY #define _SLIST_ENTRY _SINGLE_LIST_ENTRY
#define PSLIST_ENTRY PSINGLE_LIST_ENTRY #define PSLIST_ENTRY PSINGLE_LIST_ENTRY
typedef SLIST_ENTRY SLIST_ENTRY32, *PSLIST_ENTRY32;
typedef union _SLIST_HEADER { typedef union _SLIST_HEADER {
ULONGLONG Alignment; ULONGLONG Alignment;
struct { _ANONYMOUS_STRUCT struct {
SLIST_ENTRY Next; SLIST_ENTRY Next;
USHORT Depth; WORD Depth;
USHORT Sequence; WORD Sequence;
} DUMMYSTRUCTNAME; } DUMMYSTRUCTNAME;
} SLIST_HEADER, *PSLIST_HEADER; } SLIST_HEADER, *PSLIST_HEADER;
#endif
typedef SLIST_HEADER SLIST_HEADER32, *PSLIST_HEADER32;
#endif /* defined(_WIN64) */
#endif /* _SLIST_HEADER_ */ #endif /* _SLIST_HEADER_ */
NTSYSAPI NTSYSAPI
VOID VOID
NTAPI NTAPI
@ -3435,6 +3476,8 @@ typedef struct _RTL_CRITICAL_SECTION_DEBUG {
WORD CreatorBackTraceIndexHigh; WORD CreatorBackTraceIndexHigh;
WORD SpareWORD; WORD SpareWORD;
} RTL_CRITICAL_SECTION_DEBUG, *PRTL_CRITICAL_SECTION_DEBUG, RTL_RESOURCE_DEBUG, *PRTL_RESOURCE_DEBUG; } RTL_CRITICAL_SECTION_DEBUG, *PRTL_CRITICAL_SECTION_DEBUG, RTL_RESOURCE_DEBUG, *PRTL_RESOURCE_DEBUG;
#include "pshpack8.h"
typedef struct _RTL_CRITICAL_SECTION { typedef struct _RTL_CRITICAL_SECTION {
PRTL_CRITICAL_SECTION_DEBUG DebugInfo; PRTL_CRITICAL_SECTION_DEBUG DebugInfo;
LONG LockCount; LONG LockCount;
@ -3443,6 +3486,7 @@ typedef struct _RTL_CRITICAL_SECTION {
HANDLE LockSemaphore; HANDLE LockSemaphore;
ULONG_PTR SpinCount; ULONG_PTR SpinCount;
} RTL_CRITICAL_SECTION, *PRTL_CRITICAL_SECTION; } RTL_CRITICAL_SECTION, *PRTL_CRITICAL_SECTION;
#include "poppack.h"
NTSYSAPI NTSYSAPI
WORD WORD
@ -3480,15 +3524,15 @@ RtlUnwind (
); );
#define RTL_SRWLOCK_INIT {0} #define RTL_SRWLOCK_INIT {0}
typedef struct _RTL_SRWLOCK
{ typedef struct _RTL_SRWLOCK {
PVOID Ptr; PVOID Ptr;
} RTL_SRWLOCK, *PRTL_SRWLOCK; } RTL_SRWLOCK, *PRTL_SRWLOCK;
#define RTL_CONDITION_VARIABLE_INIT {0} #define RTL_CONDITION_VARIABLE_INIT {0}
#define RTL_CONDITION_VARIABLE_LOCKMODE_SHARED 0x1 #define RTL_CONDITION_VARIABLE_LOCKMODE_SHARED 0x1
typedef struct _RTL_CONDITION_VARIABLE
{ typedef struct _RTL_CONDITION_VARIABLE {
PVOID Ptr; PVOID Ptr;
} RTL_CONDITION_VARIABLE, *PRTL_CONDITION_VARIABLE; } RTL_CONDITION_VARIABLE, *PRTL_CONDITION_VARIABLE;
@ -3575,6 +3619,7 @@ typedef struct _OSVERSIONINFOEXW {
} OSVERSIONINFOEXW, *POSVERSIONINFOEXW, *LPOSVERSIONINFOEXW, RTL_OSVERSIONINFOEXW, *PRTL_OSVERSIONINFOEXW; } OSVERSIONINFOEXW, *POSVERSIONINFOEXW, *LPOSVERSIONINFOEXW, RTL_OSVERSIONINFOEXW, *PRTL_OSVERSIONINFOEXW;
#include <pshpack2.h> #include <pshpack2.h>
typedef struct _IMAGE_VXD_HEADER { typedef struct _IMAGE_VXD_HEADER {
WORD e32_magic; WORD e32_magic;
BYTE e32_border; BYTE e32_border;
@ -3628,6 +3673,62 @@ typedef struct _IMAGE_VXD_HEADER {
WORD e32_devid; WORD e32_devid;
WORD e32_ddkver; WORD e32_ddkver;
} IMAGE_VXD_HEADER, *PIMAGE_VXD_HEADER; } IMAGE_VXD_HEADER, *PIMAGE_VXD_HEADER;
typedef struct _IMAGE_DOS_HEADER {
WORD e_magic;
WORD e_cblp;
WORD e_cp;
WORD e_crlc;
WORD e_cparhdr;
WORD e_minalloc;
WORD e_maxalloc;
WORD e_ss;
WORD e_sp;
WORD e_csum;
WORD e_ip;
WORD e_cs;
WORD e_lfarlc;
WORD e_ovno;
WORD e_res[4];
WORD e_oemid;
WORD e_oeminfo;
WORD e_res2[10];
LONG e_lfanew;
} IMAGE_DOS_HEADER, *PIMAGE_DOS_HEADER;
typedef struct _IMAGE_OS2_HEADER {
WORD ne_magic;
CHAR ne_ver;
CHAR ne_rev;
WORD ne_enttab;
WORD ne_cbenttab;
LONG ne_crc;
WORD ne_flags;
WORD ne_autodata;
WORD ne_heap;
WORD ne_stack;
LONG ne_csip;
LONG ne_sssp;
WORD ne_cseg;
WORD ne_cmod;
WORD ne_cbnrestab;
WORD ne_segtab;
WORD ne_rsrctab;
WORD ne_restab;
WORD ne_modtab;
WORD ne_imptab;
LONG ne_nrestab;
WORD ne_cmovent;
WORD ne_align;
WORD ne_cres;
BYTE ne_exetyp;
BYTE ne_flagsothers;
WORD ne_pretthunks;
WORD ne_psegrefbytes;
WORD ne_swaparea;
WORD ne_expver;
} IMAGE_OS2_HEADER, *PIMAGE_OS2_HEADER;
#include <poppack.h> #include <poppack.h>
typedef struct _IMAGE_FILE_HEADER { typedef struct _IMAGE_FILE_HEADER {
@ -3728,63 +3829,6 @@ typedef struct _IMAGE_ROM_OPTIONAL_HEADER {
DWORD GpValue; DWORD GpValue;
} IMAGE_ROM_OPTIONAL_HEADER, *PIMAGE_ROM_OPTIONAL_HEADER; } IMAGE_ROM_OPTIONAL_HEADER, *PIMAGE_ROM_OPTIONAL_HEADER;
#include <pshpack2.h>
typedef struct _IMAGE_DOS_HEADER {
WORD e_magic;
WORD e_cblp;
WORD e_cp;
WORD e_crlc;
WORD e_cparhdr;
WORD e_minalloc;
WORD e_maxalloc;
WORD e_ss;
WORD e_sp;
WORD e_csum;
WORD e_ip;
WORD e_cs;
WORD e_lfarlc;
WORD e_ovno;
WORD e_res[4];
WORD e_oemid;
WORD e_oeminfo;
WORD e_res2[10];
LONG e_lfanew;
} IMAGE_DOS_HEADER,*PIMAGE_DOS_HEADER;
typedef struct _IMAGE_OS2_HEADER {
WORD ne_magic;
CHAR ne_ver;
CHAR ne_rev;
WORD ne_enttab;
WORD ne_cbenttab;
LONG ne_crc;
WORD ne_flags;
WORD ne_autodata;
WORD ne_heap;
WORD ne_stack;
LONG ne_csip;
LONG ne_sssp;
WORD ne_cseg;
WORD ne_cmod;
WORD ne_cbnrestab;
WORD ne_segtab;
WORD ne_rsrctab;
WORD ne_restab;
WORD ne_modtab;
WORD ne_imptab;
LONG ne_nrestab;
WORD ne_cmovent;
WORD ne_align;
WORD ne_cres;
BYTE ne_exetyp;
BYTE ne_flagsothers;
WORD ne_pretthunks;
WORD ne_psegrefbytes;
WORD ne_swaparea;
WORD ne_expver;
} IMAGE_OS2_HEADER,*PIMAGE_OS2_HEADER;
#include <poppack.h>
typedef struct _IMAGE_NT_HEADERS32 { typedef struct _IMAGE_NT_HEADERS32 {
DWORD Signature; DWORD Signature;
IMAGE_FILE_HEADER FileHeader; IMAGE_FILE_HEADER FileHeader;
@ -3854,7 +3898,14 @@ typedef struct _IMAGE_LINENUMBER {
DWORD VirtualAddress; DWORD VirtualAddress;
} Type; } Type;
WORD Linenumber; WORD Linenumber;
} IMAGE_LINENUMBER,*PIMAGE_LINENUMBER; } IMAGE_LINENUMBER, UNALIGNED *PIMAGE_LINENUMBER;
typedef struct IMAGE_AUX_SYMBOL_TOKEN_DEF {
BYTE bAuxType;
BYTE bReserved;
DWORD SymbolTableIndex;
BYTE rgbReserved[12];
} IMAGE_AUX_SYMBOL_TOKEN_DEF, UNALIGNED *PIMAGE_AUX_SYMBOL_TOKEN_DEF;
typedef union _IMAGE_AUX_SYMBOL { typedef union _IMAGE_AUX_SYMBOL {
struct { struct {
@ -3887,7 +3938,14 @@ typedef union _IMAGE_AUX_SYMBOL {
DWORD CheckSum; DWORD CheckSum;
SHORT Number; SHORT Number;
BYTE Selection; BYTE Selection;
BYTE bReserved;
SHORT HighNumber;
} Section; } Section;
IMAGE_AUX_SYMBOL_TOKEN_DEF TokenDef;
struct {
DWORD crc;
BYTE rgbReserved[14];
} CRC;
} IMAGE_AUX_SYMBOL, *PIMAGE_AUX_SYMBOL; } IMAGE_AUX_SYMBOL, *PIMAGE_AUX_SYMBOL;
typedef struct _IMAGE_RELOCATION { typedef struct _IMAGE_RELOCATION {
@ -3897,65 +3955,59 @@ typedef struct _IMAGE_RELOCATION {
} DUMMYUNIONNAME; } DUMMYUNIONNAME;
DWORD SymbolTableIndex; DWORD SymbolTableIndex;
WORD Type; WORD Type;
} IMAGE_RELOCATION,*PIMAGE_RELOCATION; } IMAGE_RELOCATION, UNALIGNED *PIMAGE_RELOCATION;
#include <poppack.h> #include <poppack.h>
#ifndef __IMAGE_COR20_HEADER_DEFINED__ #ifndef __IMAGE_COR20_HEADER_DEFINED__
#define __IMAGE_COR20_HEADER_DEFINED__ #define __IMAGE_COR20_HEADER_DEFINED__
typedef enum ReplacesCorHdrNumericDefines typedef enum ReplacesCorHdrNumericDefines {
{
COMIMAGE_FLAGS_ILONLY = 0x00000001, COMIMAGE_FLAGS_ILONLY = 0x00000001,
COMIMAGE_FLAGS_32BITREQUIRED = 0x00000002, COMIMAGE_FLAGS_32BITREQUIRED = 0x00000002,
COMIMAGE_FLAGS_IL_LIBRARY = 0x00000004, COMIMAGE_FLAGS_IL_LIBRARY = 0x00000004,
COMIMAGE_FLAGS_STRONGNAMESIGNED = 0x00000008, COMIMAGE_FLAGS_STRONGNAMESIGNED = 0x00000008,
COMIMAGE_FLAGS_NATIVE_ENTRYPOINT = 0x00000010,
COMIMAGE_FLAGS_TRACKDEBUGDATA = 0x00010000, COMIMAGE_FLAGS_TRACKDEBUGDATA = 0x00010000,
COR_VERSION_MAJOR_V2 = 2, COR_VERSION_MAJOR_V2 = 2,
COR_VERSION_MAJOR = COR_VERSION_MAJOR_V2, COR_VERSION_MAJOR = COR_VERSION_MAJOR_V2,
COR_VERSION_MINOR = 0, COR_VERSION_MINOR = 0,
COR_DELETED_NAME_LENGTH = 8, COR_DELETED_NAME_LENGTH = 8,
COR_VTABLEGAP_NAME_LENGTH = 8, COR_VTABLEGAP_NAME_LENGTH = 8,
NATIVE_TYPE_MAX_CB = 1, NATIVE_TYPE_MAX_CB = 1,
COR_ILMETHOD_SECT_SMALL_MAX_DATASIZE = 0xff, COR_ILMETHOD_SECT_SMALL_MAX_DATASIZE = 0xFF,
IMAGE_COR_MIH_METHODRVA = 0x01, IMAGE_COR_MIH_METHODRVA = 0x01,
IMAGE_COR_MIH_EHRVA = 0x02, IMAGE_COR_MIH_EHRVA = 0x02,
IMAGE_COR_MIH_BASICBLOCK = 0x08, IMAGE_COR_MIH_BASICBLOCK = 0x08,
COR_VTABLE_32BIT = 0x01, COR_VTABLE_32BIT = 0x01,
COR_VTABLE_64BIT = 0x02, COR_VTABLE_64BIT = 0x02,
COR_VTABLE_FROM_UNMANAGED = 0x04, COR_VTABLE_FROM_UNMANAGED = 0x04,
COR_VTABLE_FROM_UNMANAGED_RETAIN_APPDOMAIN = 0x08,
COR_VTABLE_CALL_MOST_DERIVED = 0x10, COR_VTABLE_CALL_MOST_DERIVED = 0x10,
IMAGE_COR_EATJ_THUNK_SIZE = 32, IMAGE_COR_EATJ_THUNK_SIZE = 32,
MAX_CLASS_NAME = 1024, MAX_CLASS_NAME = 1024,
MAX_PACKAGE_NAME = 1024, MAX_PACKAGE_NAME = 1024
} ReplacesCorHdrNumericDefines; } ReplacesCorHdrNumericDefines;
typedef struct IMAGE_COR20_HEADER typedef struct IMAGE_COR20_HEADER {
{
DWORD cb; DWORD cb;
WORD MajorRuntimeVersion; WORD MajorRuntimeVersion;
WORD MinorRuntimeVersion; WORD MinorRuntimeVersion;
IMAGE_DATA_DIRECTORY MetaData; IMAGE_DATA_DIRECTORY MetaData;
DWORD Flags; DWORD Flags;
_ANONYMOUS_UNION union {
DWORD EntryPointToken; DWORD EntryPointToken;
DWORD EntryPointRVA;
} DUMMYUNIONNAME;
IMAGE_DATA_DIRECTORY Resources; IMAGE_DATA_DIRECTORY Resources;
IMAGE_DATA_DIRECTORY StrongNameSignature; IMAGE_DATA_DIRECTORY StrongNameSignature;
IMAGE_DATA_DIRECTORY CodeManagerTable; IMAGE_DATA_DIRECTORY CodeManagerTable;
IMAGE_DATA_DIRECTORY VTableFixups; IMAGE_DATA_DIRECTORY VTableFixups;
IMAGE_DATA_DIRECTORY ExportAddressTableJumps; IMAGE_DATA_DIRECTORY ExportAddressTableJumps;
IMAGE_DATA_DIRECTORY ManagedNativeHeader; IMAGE_DATA_DIRECTORY ManagedNativeHeader;
} IMAGE_COR20_HEADER, *PIMAGE_COR20_HEADER; } IMAGE_COR20_HEADER, *PIMAGE_COR20_HEADER;
#endif #endif /* __IMAGE_COR20_HEADER_DEFINED__ */
typedef struct _IMAGE_COFF_SYMBOLS_HEADER { typedef struct _IMAGE_COFF_SYMBOLS_HEADER {
DWORD NumberOfSymbols; DWORD NumberOfSymbols;
@ -3971,7 +4023,7 @@ typedef struct _IMAGE_COFF_SYMBOLS_HEADER {
typedef struct _IMAGE_BASE_RELOCATION { typedef struct _IMAGE_BASE_RELOCATION {
DWORD VirtualAddress; DWORD VirtualAddress;
DWORD SizeOfBlock; DWORD SizeOfBlock;
} IMAGE_BASE_RELOCATION,*PIMAGE_BASE_RELOCATION; } IMAGE_BASE_RELOCATION, UNALIGNED *PIMAGE_BASE_RELOCATION;
typedef struct _IMAGE_ARCHIVE_MEMBER_HEADER { typedef struct _IMAGE_ARCHIVE_MEMBER_HEADER {
BYTE Name[16]; BYTE Name[16];
@ -4010,8 +4062,7 @@ typedef struct _IMAGE_THUNK_DATA64 {
ULONGLONG Ordinal; ULONGLONG Ordinal;
ULONGLONG AddressOfData; ULONGLONG AddressOfData;
} u1; } u1;
} IMAGE_THUNK_DATA64; } IMAGE_THUNK_DATA64, *PIMAGE_THUNK_DATA64;
typedef IMAGE_THUNK_DATA64 *PIMAGE_THUNK_DATA64;
#include <poppack.h> #include <poppack.h>
typedef struct _IMAGE_THUNK_DATA32 { typedef struct _IMAGE_THUNK_DATA32 {
@ -4021,8 +4072,7 @@ typedef struct _IMAGE_THUNK_DATA32 {
DWORD Ordinal; DWORD Ordinal;
DWORD AddressOfData; DWORD AddressOfData;
} u1; } u1;
} IMAGE_THUNK_DATA32; } IMAGE_THUNK_DATA32, *PIMAGE_THUNK_DATA32;
typedef IMAGE_THUNK_DATA32 *PIMAGE_THUNK_DATA32;
#define IMAGE_ORDINAL_FLAG64 0x8000000000000000ULL #define IMAGE_ORDINAL_FLAG64 0x8000000000000000ULL
#define IMAGE_ORDINAL_FLAG32 0x80000000 #define IMAGE_ORDINAL_FLAG32 0x80000000
@ -4041,8 +4091,7 @@ typedef struct _IMAGE_TLS_DIRECTORY64 {
ULONGLONG AddressOfCallBacks; ULONGLONG AddressOfCallBacks;
DWORD SizeOfZeroFill; DWORD SizeOfZeroFill;
DWORD Characteristics; DWORD Characteristics;
} IMAGE_TLS_DIRECTORY64; } IMAGE_TLS_DIRECTORY64, *PIMAGE_TLS_DIRECTORY64;
typedef IMAGE_TLS_DIRECTORY64 *PIMAGE_TLS_DIRECTORY64;
typedef struct _IMAGE_TLS_DIRECTORY32 { typedef struct _IMAGE_TLS_DIRECTORY32 {
DWORD StartAddressOfRawData; DWORD StartAddressOfRawData;
@ -4051,8 +4100,8 @@ typedef struct _IMAGE_TLS_DIRECTORY32 {
DWORD AddressOfCallBacks; DWORD AddressOfCallBacks;
DWORD SizeOfZeroFill; DWORD SizeOfZeroFill;
DWORD Characteristics; DWORD Characteristics;
} IMAGE_TLS_DIRECTORY32; } IMAGE_TLS_DIRECTORY32, *PIMAGE_TLS_DIRECTORY32;
typedef IMAGE_TLS_DIRECTORY32 *PIMAGE_TLS_DIRECTORY32;
#ifdef _WIN64 #ifdef _WIN64
#define IMAGE_ORDINAL_FLAG IMAGE_ORDINAL_FLAG64 #define IMAGE_ORDINAL_FLAG IMAGE_ORDINAL_FLAG64
#define IMAGE_ORDINAL(Ordinal) IMAGE_ORDINAL64(Ordinal) #define IMAGE_ORDINAL(Ordinal) IMAGE_ORDINAL64(Ordinal)
@ -4074,13 +4123,13 @@ typedef PIMAGE_TLS_DIRECTORY32 PIMAGE_TLS_DIRECTORY;
typedef struct _IMAGE_IMPORT_DESCRIPTOR { typedef struct _IMAGE_IMPORT_DESCRIPTOR {
_ANONYMOUS_UNION union { _ANONYMOUS_UNION union {
DWORD Characteristics; DWORD Characteristics;
ULONG OriginalFirstThunk; DWORD OriginalFirstThunk;
} DUMMYUNIONNAME; } DUMMYUNIONNAME;
DWORD TimeDateStamp; DWORD TimeDateStamp;
DWORD ForwarderChain; DWORD ForwarderChain;
DWORD Name; DWORD Name;
ULONG FirstThunk; DWORD FirstThunk;
} IMAGE_IMPORT_DESCRIPTOR,*PIMAGE_IMPORT_DESCRIPTOR; } IMAGE_IMPORT_DESCRIPTOR, UNALIGNED *PIMAGE_IMPORT_DESCRIPTOR;
typedef struct _IMAGE_BOUND_IMPORT_DESCRIPTOR { typedef struct _IMAGE_BOUND_IMPORT_DESCRIPTOR {
DWORD TimeDateStamp; DWORD TimeDateStamp;
@ -4102,24 +4151,22 @@ typedef struct _IMAGE_RESOURCE_DIRECTORY {
WORD NumberOfNamedEntries; WORD NumberOfNamedEntries;
WORD NumberOfIdEntries; WORD NumberOfIdEntries;
} IMAGE_RESOURCE_DIRECTORY, *PIMAGE_RESOURCE_DIRECTORY; } IMAGE_RESOURCE_DIRECTORY, *PIMAGE_RESOURCE_DIRECTORY;
_ANONYMOUS_STRUCT typedef struct _IMAGE_RESOURCE_DIRECTORY_ENTRY {
typedef struct _IMAGE_RESOURCE_DIRECTORY_ENTRY {
_ANONYMOUS_UNION union { _ANONYMOUS_UNION union {
_ANONYMOUS_STRUCT struct { _ANONYMOUS_STRUCT struct {
DWORD NameOffset:31; DWORD NameOffset:31;
DWORD NameIsString:1; DWORD NameIsString:1;
}DUMMYSTRUCTNAME1; } DUMMYSTRUCTNAME;
DWORD Name; DWORD Name;
_ANONYMOUS_STRUCT struct {
WORD Id; WORD Id;
WORD __pad; } DUMMYUNIONNAME;
}DUMMYSTRUCTNAME2;
} DUMMYUNIONNAME1;
_ANONYMOUS_UNION union { _ANONYMOUS_UNION union {
DWORD OffsetToData; DWORD OffsetToData;
_ANONYMOUS_STRUCT struct { _ANONYMOUS_STRUCT struct {
DWORD OffsetToDirectory:31; DWORD OffsetToDirectory:31;
DWORD DataIsDirectory:1; DWORD DataIsDirectory:1;
} DUMMYSTRUCTNAME3; } DUMMYSTRUCTNAME;
} DUMMYUNIONNAME2; } DUMMYUNIONNAME2;
} IMAGE_RESOURCE_DIRECTORY_ENTRY, *PIMAGE_RESOURCE_DIRECTORY_ENTRY; } IMAGE_RESOURCE_DIRECTORY_ENTRY, *PIMAGE_RESOURCE_DIRECTORY_ENTRY;
@ -4140,7 +4187,7 @@ typedef struct _IMAGE_RESOURCE_DATA_ENTRY {
DWORD Reserved; DWORD Reserved;
} IMAGE_RESOURCE_DATA_ENTRY, *PIMAGE_RESOURCE_DATA_ENTRY; } IMAGE_RESOURCE_DATA_ENTRY, *PIMAGE_RESOURCE_DATA_ENTRY;
typedef struct _IMAGE_LOAD_CONFIG_DIRECTORY { typedef struct _IMAGE_LOAD_CONFIG_DIRECTORY32 {
DWORD Size; DWORD Size;
DWORD TimeDateStamp; DWORD TimeDateStamp;
WORD MajorVersion; WORD MajorVersion;
@ -4161,14 +4208,43 @@ typedef struct _IMAGE_LOAD_CONFIG_DIRECTORY {
DWORD SecurityCookie; DWORD SecurityCookie;
DWORD SEHandlerTable; DWORD SEHandlerTable;
DWORD SEHandlerCount; DWORD SEHandlerCount;
} IMAGE_LOAD_CONFIG_DIRECTORY,*PIMAGE_LOAD_CONFIG_DIRECTORY; } IMAGE_LOAD_CONFIG_DIRECTORY32, *PIMAGE_LOAD_CONFIG_DIRECTORY32;
typedef struct _IMAGE_LOAD_CONFIG_DIRECTORY64 {
DWORD Size;
DWORD TimeDateStamp;
WORD MajorVersion;
WORD MinorVersion;
DWORD GlobalFlagsClear;
DWORD GlobalFlagsSet;
DWORD CriticalSectionDefaultTimeout;
ULONGLONG DeCommitFreeBlockThreshold;
ULONGLONG DeCommitTotalFreeThreshold;
ULONGLONG LockPrefixTable;
ULONGLONG MaximumAllocationSize;
ULONGLONG VirtualMemoryThreshold;
ULONGLONG ProcessAffinityMask;
DWORD ProcessHeapFlags;
WORD CSDVersion;
WORD Reserved1;
ULONGLONG EditList;
ULONGLONG SecurityCookie;
ULONGLONG SEHandlerTable;
ULONGLONG SEHandlerCount;
} IMAGE_LOAD_CONFIG_DIRECTORY64, *PIMAGE_LOAD_CONFIG_DIRECTORY64;
#ifdef _WIN64
typedef IMAGE_LOAD_CONFIG_DIRECTORY64 IMAGE_LOAD_CONFIG_DIRECTORY;
typedef PIMAGE_LOAD_CONFIG_DIRECTORY64 PIMAGE_LOAD_CONFIG_DIRECTORY;
#else
typedef IMAGE_LOAD_CONFIG_DIRECTORY32 IMAGE_LOAD_CONFIG_DIRECTORY;
typedef PIMAGE_LOAD_CONFIG_DIRECTORY32 PIMAGE_LOAD_CONFIG_DIRECTORY;
#endif
typedef struct _IMAGE_RUNTIME_FUNCTION_ENTRY { typedef struct _IMAGE_RUNTIME_FUNCTION_ENTRY {
DWORD BeginAddress; DWORD BeginAddress;
DWORD EndAddress; DWORD EndAddress;
PVOID ExceptionHandler; DWORD UnwindInfoAddress;
PVOID HandlerData;
DWORD PrologEndAddress;
} IMAGE_RUNTIME_FUNCTION_ENTRY, *PIMAGE_RUNTIME_FUNCTION_ENTRY; } IMAGE_RUNTIME_FUNCTION_ENTRY, *PIMAGE_RUNTIME_FUNCTION_ENTRY;
typedef struct _IMAGE_DEBUG_DIRECTORY { typedef struct _IMAGE_DEBUG_DIRECTORY {
@ -4504,8 +4580,8 @@ typedef struct {
typedef struct _POWER_ACTION_POLICY { typedef struct _POWER_ACTION_POLICY {
POWER_ACTION Action; POWER_ACTION Action;
ULONG Flags; DWORD Flags;
ULONG EventCode; DWORD EventCode;
} POWER_ACTION_POLICY, *PPOWER_ACTION_POLICY; } POWER_ACTION_POLICY, *PPOWER_ACTION_POLICY;
/* POWER_ACTION_POLICY.Flags constants */ /* POWER_ACTION_POLICY.Flags constants */
@ -4537,40 +4613,40 @@ typedef struct _POWER_ACTION_POLICY {
typedef struct _SYSTEM_POWER_LEVEL { typedef struct _SYSTEM_POWER_LEVEL {
BOOLEAN Enable; BOOLEAN Enable;
UCHAR Spare[3]; BYTE Spare[3];
ULONG BatteryLevel; DWORD BatteryLevel;
POWER_ACTION_POLICY PowerPolicy; POWER_ACTION_POLICY PowerPolicy;
SYSTEM_POWER_STATE MinSystemState; SYSTEM_POWER_STATE MinSystemState;
} SYSTEM_POWER_LEVEL, *PSYSTEM_POWER_LEVEL; } SYSTEM_POWER_LEVEL, *PSYSTEM_POWER_LEVEL;
typedef struct _SYSTEM_POWER_POLICY { typedef struct _SYSTEM_POWER_POLICY {
ULONG Revision; DWORD Revision;
POWER_ACTION_POLICY PowerButton; POWER_ACTION_POLICY PowerButton;
POWER_ACTION_POLICY SleepButton; POWER_ACTION_POLICY SleepButton;
POWER_ACTION_POLICY LidClose; POWER_ACTION_POLICY LidClose;
SYSTEM_POWER_STATE LidOpenWake; SYSTEM_POWER_STATE LidOpenWake;
ULONG Reserved; DWORD Reserved;
POWER_ACTION_POLICY Idle; POWER_ACTION_POLICY Idle;
ULONG IdleTimeout; DWORD IdleTimeout;
UCHAR IdleSensitivity; BYTE IdleSensitivity;
UCHAR DynamicThrottle; BYTE DynamicThrottle;
UCHAR Spare2[2]; BYTE Spare2[2];
SYSTEM_POWER_STATE MinSleep; SYSTEM_POWER_STATE MinSleep;
SYSTEM_POWER_STATE MaxSleep; SYSTEM_POWER_STATE MaxSleep;
SYSTEM_POWER_STATE ReducedLatencySleep; SYSTEM_POWER_STATE ReducedLatencySleep;
ULONG WinLogonFlags; DWORD WinLogonFlags;
ULONG Spare3; DWORD Spare3;
ULONG DozeS4Timeout; DWORD DozeS4Timeout;
ULONG BroadcastCapacityResolution; DWORD BroadcastCapacityResolution;
SYSTEM_POWER_LEVEL DischargePolicy[NUM_DISCHARGE_POLICIES]; SYSTEM_POWER_LEVEL DischargePolicy[NUM_DISCHARGE_POLICIES];
ULONG VideoTimeout; DWORD VideoTimeout;
BOOLEAN VideoDimDisplay; BOOLEAN VideoDimDisplay;
ULONG VideoReserved[3]; DWORD VideoReserved[3];
ULONG SpindownTimeout; DWORD SpindownTimeout;
BOOLEAN OptimizeForPower; BOOLEAN OptimizeForPower;
UCHAR FanThrottleTolerance; BYTE FanThrottleTolerance;
UCHAR ForcedThrottle; BYTE ForcedThrottle;
UCHAR MinThrottle; BYTE MinThrottle;
POWER_ACTION_POLICY OverThrottled; POWER_ACTION_POLICY OverThrottled;
} SYSTEM_POWER_POLICY, *PSYSTEM_POWER_POLICY; } SYSTEM_POWER_POLICY, *PSYSTEM_POWER_POLICY;
@ -4590,11 +4666,17 @@ typedef struct _SYSTEM_POWER_CAPABILITIES {
BOOLEAN UpsPresent; BOOLEAN UpsPresent;
BOOLEAN ThermalControl; BOOLEAN ThermalControl;
BOOLEAN ProcessorThrottle; BOOLEAN ProcessorThrottle;
UCHAR ProcessorMinThrottle; BYTE ProcessorMinThrottle;
UCHAR ProcessorMaxThrottle; #if (NTDDI_VERSION < NTDDI_WINXP)
UCHAR spare2[4]; BYTE ProcessorThrottleScale;
BYTE spare2[4];
#else
BYTE ProcessorMaxThrottle;
BOOLEAN FastSystemS4;
BYTE spare2[3];
#endif /* (NTDDI_VERSION < NTDDI_WINXP) */
BOOLEAN DiskSpinDown; BOOLEAN DiskSpinDown;
UCHAR spare3[8]; BYTE spare3[8];
BOOLEAN SystemBatteriesPresent; BOOLEAN SystemBatteriesPresent;
BOOLEAN BatteriesAreShortTerm; BOOLEAN BatteriesAreShortTerm;
BATTERY_REPORTING_SCALE BatteryScale[3]; BATTERY_REPORTING_SCALE BatteryScale[3];
@ -4611,12 +4693,12 @@ typedef struct _SYSTEM_BATTERY_STATE {
BOOLEAN Charging; BOOLEAN Charging;
BOOLEAN Discharging; BOOLEAN Discharging;
BOOLEAN Spare1[4]; BOOLEAN Spare1[4];
ULONG MaxCapacity; DWORD MaxCapacity;
ULONG RemainingCapacity; DWORD RemainingCapacity;
ULONG Rate; DWORD Rate;
ULONG EstimatedTime; DWORD EstimatedTime;
ULONG DefaultAlert1; DWORD DefaultAlert1;
ULONG DefaultAlert2; DWORD DefaultAlert2;
} SYSTEM_BATTERY_STATE, *PSYSTEM_BATTERY_STATE; } SYSTEM_BATTERY_STATE, *PSYSTEM_BATTERY_STATE;
typedef struct _PROCESSOR_POWER_INFORMATION { typedef struct _PROCESSOR_POWER_INFORMATION {
@ -4704,12 +4786,21 @@ typedef enum _AUDIT_EVENT_TYPE {
#endif #endif
#if (_WIN32_WINNT >= 0x0501) #if (_WIN32_WINNT >= 0x0501)
typedef enum _ACTIVATION_CONTEXT_INFO_CLASS { typedef enum _ACTIVATION_CONTEXT_INFO_CLASS {
ActivationContextBasicInformation = 1, ActivationContextBasicInformation = 1,
ActivationContextDetailedInformation, ActivationContextDetailedInformation = 2,
AssemblyDetailedInformationInActivationContext, AssemblyDetailedInformationInActivationContext = 3,
FileInformationInAssemblyOfAssemblyInActivationContext FileInformationInAssemblyOfAssemblyInActivationContext = 4,
RunlevelInformationInActivationContext = 5,
CompatibilityInformationInActivationContext = 6,
ActivationContextManifestResourceName = 7,
MaxActivationContextInfoClass,
/* For compatibility with the old names */
AssemblyDetailedInformationInActivationContxt = 3,
FileInformationInAssemblyOfAssemblyInActivationContxt = 4
} ACTIVATION_CONTEXT_INFO_CLASS; } ACTIVATION_CONTEXT_INFO_CLASS;
typedef struct _ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION { typedef struct _ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION {
DWORD ulFlags; DWORD ulFlags;
DWORD ulEncodedAssemblyIdentityLength; DWORD ulEncodedAssemblyIdentityLength;
@ -4731,6 +4822,7 @@ typedef struct _ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION {
PCWSTR lpAssemblyDirectoryName; PCWSTR lpAssemblyDirectoryName;
} ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION, *PACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION; } ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION, *PACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION;
typedef const ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION *PCACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION; typedef const ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION *PCACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION;
typedef struct _ACTIVATION_CONTEXT_DETAILED_INFORMATION { typedef struct _ACTIVATION_CONTEXT_DETAILED_INFORMATION {
DWORD dwFlags; DWORD dwFlags;
DWORD ulFormatVersion; DWORD ulFormatVersion;
@ -4746,11 +4838,13 @@ typedef struct _ACTIVATION_CONTEXT_DETAILED_INFORMATION {
PCWSTR lpAppDirPath; PCWSTR lpAppDirPath;
} ACTIVATION_CONTEXT_DETAILED_INFORMATION, *PACTIVATION_CONTEXT_DETAILED_INFORMATION; } ACTIVATION_CONTEXT_DETAILED_INFORMATION, *PACTIVATION_CONTEXT_DETAILED_INFORMATION;
typedef const ACTIVATION_CONTEXT_DETAILED_INFORMATION *PCACTIVATION_CONTEXT_DETAILED_INFORMATION; typedef const ACTIVATION_CONTEXT_DETAILED_INFORMATION *PCACTIVATION_CONTEXT_DETAILED_INFORMATION;
typedef struct _ACTIVATION_CONTEXT_QUERY_INDEX { typedef struct _ACTIVATION_CONTEXT_QUERY_INDEX {
ULONG ulAssemblyIndex; DWORD ulAssemblyIndex;
ULONG ulFileIndexInAssembly; DWORD ulFileIndexInAssembly;
} ACTIVATION_CONTEXT_QUERY_INDEX,*PACTIVATION_CONTEXT_QUERY_INDEX; } ACTIVATION_CONTEXT_QUERY_INDEX,*PACTIVATION_CONTEXT_QUERY_INDEX;
typedef const ACTIVATION_CONTEXT_QUERY_INDEX *PCACTIVATION_CONTEXT_QUERY_INDEX; typedef const ACTIVATION_CONTEXT_QUERY_INDEX *PCACTIVATION_CONTEXT_QUERY_INDEX;
typedef struct _ASSEMBLY_FILE_DETAILED_INFORMATION { typedef struct _ASSEMBLY_FILE_DETAILED_INFORMATION {
DWORD ulFlags; DWORD ulFlags;
DWORD ulFilenameLength; DWORD ulFilenameLength;
@ -4778,32 +4872,36 @@ typedef const ASSEMBLY_FILE_DETAILED_INFORMATION *PCASSEMBLY_FILE_DETAILED_INFOR
#endif /* (WIN32_WINNT >= 0x0501) */ #endif /* (WIN32_WINNT >= 0x0501) */
typedef struct _PROCESSOR_POWER_POLICY_INFO { typedef struct _PROCESSOR_POWER_POLICY_INFO {
ULONG TimeCheck; DWORD TimeCheck;
ULONG DemoteLimit; DWORD DemoteLimit;
ULONG PromoteLimit; DWORD PromoteLimit;
UCHAR DemotePercent; BYTE DemotePercent;
UCHAR PromotePercent; BYTE PromotePercent;
UCHAR Spare[2]; BYTE Spare[2];
ULONG AllowDemotion : 1; DWORD AllowDemotion:1;
ULONG AllowPromotion : 1; DWORD AllowPromotion:1;
ULONG Reserved : 30; DWORD Reserved:30;
} PROCESSOR_POWER_POLICY_INFO, *PPROCESSOR_POWER_POLICY_INFO; } PROCESSOR_POWER_POLICY_INFO, *PPROCESSOR_POWER_POLICY_INFO;
typedef struct _PROCESSOR_POWER_POLICY { typedef struct _PROCESSOR_POWER_POLICY {
ULONG Revision; DWORD Revision;
UCHAR DynamicThrottle; BYTE DynamicThrottle;
UCHAR Spare[3]; BYTE Spare[3];
ULONG Reserved; DWORD DisableCStates:1;
ULONG PolicyCount; DWORD Reserved:31;
DWORD PolicyCount;
PROCESSOR_POWER_POLICY_INFO Policy[3]; PROCESSOR_POWER_POLICY_INFO Policy[3];
} PROCESSOR_POWER_POLICY, *PPROCESSOR_POWER_POLICY; } PROCESSOR_POWER_POLICY, *PPROCESSOR_POWER_POLICY;
typedef struct _ADMINISTRATOR_POWER_POLICY { typedef struct _ADMINISTRATOR_POWER_POLICY {
SYSTEM_POWER_STATE MinSleep; SYSTEM_POWER_STATE MinSleep;
SYSTEM_POWER_STATE MaxSleep; SYSTEM_POWER_STATE MaxSleep;
ULONG MinVideoTimeout; DWORD MinVideoTimeout;
ULONG MaxVideoTimeout; DWORD MaxVideoTimeout;
ULONG MinSpindownTimeout; DWORD MinSpindownTimeout;
ULONG MaxSpindownTimeout; DWORD MaxSpindownTimeout;
} ADMINISTRATOR_POWER_POLICY, *PADMINISTRATOR_POWER_POLICY; } ADMINISTRATOR_POWER_POLICY, *PADMINISTRATOR_POWER_POLICY;
#endif /* WINVER >= 0x0500 */ #endif /* WINVER >= 0x0500 */
typedef VOID (NTAPI *WAITORTIMERCALLBACKFUNC)(PVOID,BOOLEAN); typedef VOID (NTAPI *WAITORTIMERCALLBACKFUNC)(PVOID,BOOLEAN);
@ -4823,9 +4921,8 @@ ULONGLONG WINAPI VerSetConditionMask(ULONGLONG,DWORD,BYTE);
#endif #endif
typedef enum _HEAP_INFORMATION_CLASS { typedef enum _HEAP_INFORMATION_CLASS {
HeapCompatibilityInformation,
HeapCompatibilityInformation HeapEnableTerminationOnCorruption
} HEAP_INFORMATION_CLASS; } HEAP_INFORMATION_CLASS;
NTSYSAPI NTSYSAPI