ReactOS  r75400
ntddk_ex.h
Go to the documentation of this file.
1 #ifndef __NTDDK_EX__H__
2 #define __NTDDK_EX__H__
3 
4 //#ifndef USE_REACTOS_DDK
5 #ifdef ASSERT
6 #undef ASSERT
7 #define ASSERT(x) ((void)0)
8 #endif //ASSERT
9 //#endif //USE_REACTOS_DDK
10 
11 
12 #if !defined(FILE_CHARACTERISTIC_PNP_DEVICE) || defined(USE_REACTOS_DDK) // DDK 2003
13 
14 #ifndef FILE_CHARACTERISTIC_PNP_DEVICE
15 #define FILE_CHARACTERISTIC_PNP_DEVICE 0x00000800
16 #endif
17 
49 #ifndef USE_REACTOS_DDK
53 #else
57 #endif // USE_REACTOS_DDK
67 #ifdef USE_REACTOS_DDK
69 #elif defined IRP_MN_START_DEVICE
70  SystemPowerInformationInfo,
71 #else
73 #endif // USE_REACTOS_DDK
77 #ifdef USE_REACTOS_DDK
96 #ifdef __REACTOS__
98 #else // Typo!
99  SystemExtendedHanfleInformation,
100 #endif
110  SystemWo64SharedInformationObosolete,
135 #endif // USE_REACTOS_DDK
137 
138 #endif // !defined(FILE_CHARACTERISTIC_PNP_DEVICE) || defined(USE_REACTOS_DDK)
139 
140 
141 NTSYSAPI
142 NTSTATUS
143 NTAPI
145  IN SYSTEM_INFORMATION_CLASS SystemInfoClass,
149 );
150 
151 NTSYSAPI
152 NTSTATUS
153 NTAPI
155  IN SYSTEM_INFORMATION_CLASS SystemInfoClass,
159 );
160 
174 
175 typedef struct _SYSTEM_MODULE_ENTRY
176 {
177  ULONG Unused;
178  ULONG Always0;
181  ULONG Unknown;
185  CHAR ModuleName [256];
187 
188 typedef struct _SYSTEM_MODULE_INFORMATION
189 {
190  ULONG Count;
193 
194 typedef unsigned short WORD;
195 #ifndef __REACTOS__
196 typedef unsigned int BOOL;
197 #endif //__REACTOS__
198 typedef unsigned long DWORD;
199 typedef unsigned char BYTE;
200 
201 
202 typedef struct _LDR_DATA_TABLE_ENTRY {
214  union {
216  struct {
219  };
220  };
223 
224 typedef struct _PEB_LDR_DATA {
232 
233 typedef struct _PEB_FREE_BLOCK {
237 
238 #define GDI_HANDLE_BUFFER_SIZE 34
239 
240 #define TLS_MINIMUM_AVAILABLE 64 // winnt
241 
242 typedef struct _PEB {
243  BOOLEAN InheritedAddressSpace; // These four fields cannot change unless the
247  HANDLE Mutant; // INITIAL_PEB structure is also updated.
248 
250  PPEB_LDR_DATA Ldr;
261  PPEB_FREE_BLOCK FreeList;
264  ULONG TlsBitmapBits[2]; // relates to TLS_MINIMUM_AVAILABLE
271 
272  // Useful information for LdrpInitialize
275 
276  // Passed up from MmCreatePeb from Session Manager registry key
277 
283 
284  // Where heap manager keeps track of all heaps created for a process
285  // Fields initialized by MmCreatePeb. ProcessHeaps is initialized
286  // to point to the first free byte after the PEB and MaximumNumberOfHeaps
287  // is computed from the page size used to hold the PEB, less the fixed
288  // size of this data structure.
289 
293 
294  //
295  //
300 
301  // Following fields filled in by MmCreatePeb from system values and/or
302  // image header.
303 
313 } PEB, *PPEB;
314 
315 //
316 // Gdi command batching
317 //
318 
319 #define GDI_BATCH_BUFFER_SIZE 310
320 
321 typedef struct _GDI_TEB_BATCH {
322  ULONG Offset;
326 
327 //
328 // TEB - The thread environment block
329 //
330 
331 #define STATIC_UNICODE_BUFFER_LENGTH 261
332 #define WIN32_CLIENT_INFO_LENGTH 31
333 #define WIN32_CLIENT_INFO_SPIN_COUNT 1
334 
335 typedef struct _TEB {
345  PVOID Win32ThreadInfo; // PtiCurrent
346  ULONG Win32ClientInfo[WIN32_CLIENT_INFO_LENGTH]; // User32 Client Info
347  PVOID WOW32Reserved; // used by WOW
350  PVOID SystemReserved1[54]; // Used by FP emulator
351  PVOID Spare1; // unused
352  NTSTATUS ExceptionCode; // for RaiseUserException
354  PVOID SystemReserved2[10]; // Used by user/console for temp obja
355  GDI_TEB_BATCH GdiTebBatch; // Gdi batching
356  ULONG gdiRgn;
357  ULONG gdiPen;
358  ULONG gdiBrush;
364  PVOID UserReserved[5]; // unused
365  PVOID glDispatchTable[280]; // OpenGL
366  ULONG glReserved1[26]; // OpenGL
367  PVOID glReserved2; // OpenGL
368  PVOID glSectionInfo; // OpenGL
369  PVOID glSection; // OpenGL
370  PVOID glTable; // OpenGL
371  PVOID glCurrentRC; // OpenGL
372  PVOID glContext; // OpenGL
379  PVOID Vdm;
381  PVOID DbgSsReserved[2];
384  PVOID WinSockData; // WinSock
386  ULONG Spare2;
387  ULONG Spare3;
388  ULONG Spare4;
391 } TEB;
392 typedef TEB *PTEB;
393 
394 typedef struct _KTHREAD_HDR {
395 
396  //
397  // The dispatcher header and mutant listhead are faifly infrequently
398  // referenced, but pad the thread to a 32-byte boundary (assumption
399  // that pool allocation is in units of 32-bytes).
400  //
401 
404 
405  //
406  // The following fields are referenced during trap, interrupts, or
407  // context switches.
408  //
409  // N.B. The Teb address and TlsArray are loaded as a quadword quantity
410  // on MIPS and therefore must to on a quadword boundary.
411  //
412 
425 /* KAPC_STATE ApcState;
426  ULONG ContextSwitches;
427 
428  //
429  // The following fields are referenced during wait operations.
430  //
431 
432  NTSTATUS WaitStatus;
433  KIRQL WaitIrql;
434  KPROCESSOR_MODE WaitMode;
435  BOOLEAN WaitNext;
436  UCHAR WaitReason;
437  PRKWAIT_BLOCK WaitBlockList;
438  LIST_ENTRY WaitListEntry;
439  ULONG WaitTime;
440  SCHAR BasePriority;
441  UCHAR DecrementCount;
442  SCHAR PriorityDecrement;
443  SCHAR Quantum;
444  KWAIT_BLOCK WaitBlock[THREAD_WAIT_OBJECTS + 1];
445  PVOID LegoData;
446  ULONG KernelApcDisable;
447  KAFFINITY UserAffinity;
448  BOOLEAN SystemAffinityActive;
449  UCHAR Pad[3];
450  PVOID ServiceTable;
451 // struct _ECHANNEL *Channel;
452 // PVOID Section;
453 // PCHANNEL_MESSAGE SystemView;
454 // PCHANNEL_MESSAGE ThreadView;
455 
456  //
457  // The following fields are referenced during queue operations.
458  //
459 
460  PRKQUEUE Queue;
461  KSPIN_LOCK ApcQueueLock;
462  KTIMER Timer;
463  LIST_ENTRY QueueListEntry;
464 
465  //
466  // The following fields are referenced during read and find ready
467  // thread.
468  //
469 
470  KAFFINITY Affinity;
471  BOOLEAN Preempted;
472  BOOLEAN ProcessReadyQueue;
473  BOOLEAN KernelStackResident;
474  UCHAR NextProcessor;
475 
476  //
477  // The following fields are referenced suring system calls.
478  //
479 
480  PVOID CallbackStack;
481  PVOID Win32Thread;
482  PKTRAP_FRAME TrapFrame;
483  PKAPC_STATE ApcStatePointer[2];
484  UCHAR EnableStackSwap;
485  UCHAR LargeStack;
486  UCHAR ResourceIndex;
487  CCHAR PreviousMode;
488 
489  //
490  // The following entries are reference during clock interrupts.
491  //
492 
493  ULONG KernelTime;
494  ULONG UserTime;
495 
496  //
497  // The following fileds are referenced during APC queuing and process
498  // attach/detach.
499  //
500 
501  KAPC_STATE SavedApcState;
502  BOOLEAN Alertable;
503  UCHAR ApcStateIndex;
504  BOOLEAN ApcQueueable;
505  BOOLEAN AutoAlignment;
506 
507  //
508  // The following fields are referenced when the thread is initialized
509  // and very infrequently thereafter.
510  //
511 
512  PVOID StackBase;
513  KAPC SuspendApc;
514  KSEMAPHORE SuspendSemaphore;
515  LIST_ENTRY ThreadListEntry;
516 
517  //
518  // N.B. The below four UCHARs share the same DWORD and are modified
519  // by other threads. Therefore, they must ALWAYS be modified
520  // under the dispatcher lock to prevent granularity problems
521  // on Alpha machines.
522  //
523  CCHAR FreezeCount;
524  CCHAR SuspendCount;
525  UCHAR IdealProcessor;
526  UCHAR DisableBoost;
527 */
529 
530 #ifndef __REACTOS__
531 typedef struct _IMAGE_DOS_HEADER { // DOS .EXE header
532  WORD e_magic; // Magic number
533  WORD e_cblp; // Bytes on last page of file
534  WORD e_cp; // Pages in file
535  WORD e_crlc; // Relocations
536  WORD e_cparhdr; // Size of header in paragraphs
537  WORD e_minalloc; // Minimum extra paragraphs needed
538  WORD e_maxalloc; // Maximum extra paragraphs needed
539  WORD e_ss; // Initial (relative) SS value
540  WORD e_sp; // Initial SP value
541  WORD e_csum; // Checksum
542  WORD e_ip; // Initial IP value
543  WORD e_cs; // Initial (relative) CS value
544  WORD e_lfarlc; // File address of relocation table
545  WORD e_ovno; // Overlay number
546  WORD e_res[4]; // Reserved words
547  WORD e_oemid; // OEM identifier (for e_oeminfo)
548  WORD e_oeminfo; // OEM information; e_oemid specific
549  WORD e_res2[10]; // Reserved words
550  LONG e_lfanew; // File address of new exe header
552 
553 typedef struct _IMAGE_FILE_HEADER {
554  WORD Machine;
562 
563 typedef struct _IMAGE_DATA_DIRECTORY {
565  DWORD Size;
567 #define IMAGE_NUMBEROF_DIRECTORY_ENTRIES 16
568 
569 
570 typedef struct _IMAGE_OPTIONAL_HEADER {
571  //
572  // Standard fields.
573  //
574 
575  WORD Magic;
584 
585  //
586  // NT additional fields.
587  //
588 
601  DWORD CheckSum;
602  WORD Subsystem;
612 
613 typedef struct _IMAGE_NT_HEADERS {
619 typedef PIMAGE_NT_HEADERS32 PIMAGE_NT_HEADERS;
620 
621 #define IMAGE_DIRECTORY_ENTRY_EXPORT 0 // Export Directory
622 
623 typedef struct _IMAGE_EXPORT_DIRECTORY {
628  DWORD Name;
629  DWORD Base;
632  DWORD AddressOfFunctions; // RVA from base of image
633  DWORD AddressOfNames; // RVA from base of image
634  DWORD AddressOfNameOrdinals; // RVA from base of image
636 #endif
637 
638 NTHALAPI
639 VOID
640 NTAPI
642  PUCHAR String
643  );
644 
645 NTHALAPI
646 VOID
647 NTAPI
649  OUT PULONG WidthInCharacters,
650  OUT PULONG HeightInLines,
651  OUT PULONG CursorColumn,
652  OUT PULONG CursorRow
653  );
654 
655 NTHALAPI
656 VOID
657 NTAPI
659  IN ULONG CursorColumn,
660  IN ULONG CursorRow
661  );
662 
663 extern ULONG NtBuildNumber;
664 
665 #endif //__NTDDK_EX__H__
struct _IMAGE_OPTIONAL_HEADER IMAGE_OPTIONAL_HEADER32
ULONG gdiBrush
Definition: compat.h:509
enum _SYSTEM_INFORMATION_CLASS SYSTEM_INFORMATION_CLASS
PVOID glCurrentRC
Definition: compat.h:522
DWORD *typedef PVOID
Definition: winlogon.h:52
LIST_ENTRY MemoryOrder
Definition: ntddk_ex.h:229
BOOLEAN Initialized
Definition: ntddk_ex.h:226
_SYSTEM_INFORMATION_CLASS
Definition: ntddk_ex.h:10
PVOID EnvironmentPointer
Definition: compat.h:487
ULONG ImageSubsystemMajorVersion
Definition: ntddk_ex.h:309
ULONG gdiRgn
Definition: compat.h:507
PVOID WOW32Reserved
Definition: compat.h:497
#define IN
Definition: typedefs.h:39
#define IMAGE_NUMBEROF_DIRECTORY_ENTRIES
Definition: ntddk_ex.h:567
ULONG glReserved1[26]
Definition: compat.h:517
LIST_ENTRY InitializationOrder
Definition: ntddk_ex.h:230
ULONG Win32ClientInfo[31]
Definition: compat.h:496
WCHAR StaticUnicodeBuffer[261]
Definition: compat.h:526
unsigned short WORD
Definition: ntddk_ex.h:93
PVOID Instrumentation[16]
Definition: compat.h:534
ULONG HeapSegmentReserve
Definition: ntddk_ex.h:279
PVOID FastPebUnlockRoutine
Definition: ntddk_ex.h:256
NTSYSAPI NTSTATUS NTAPI NtQuerySystemInformation(IN SYSTEM_INFORMATION_CLASS SystemInfoClass, OUT PVOID SystemInfoBuffer, IN ULONG SystemInfoBufferSize, OUT PULONG BytesReturned OPTIONAL)
PVOID SubSystemData
Definition: ntddk_ex.h:252
IMAGE_DATA_DIRECTORY DataDirectory[IMAGE_NUMBEROF_DIRECTORY_ENTRIES]
Definition: ntddk_ex.h:178
PPEB ProcessEnvironmentBlock
Definition: ntddk_ex.h:341
USHORT ModuleNameOffset
Definition: ntddk_ex.h:83
ULONG ImageProcessAffinityMask
Definition: ntddk_ex.h:311
PVOID glReserved2
Definition: compat.h:518
ULONG ModuleEntryIndex
Definition: ntddk_ex.h:81
LIST_ENTRY TlsLinks
Definition: compat.h:529
#define NTHALAPI
Definition: ntoskrnl.h:39
PVOID Win32ThreadInfo
Definition: compat.h:495
#define GDI_HANDLE_BUFFER_SIZE
Definition: ntddk_ex.h:238
ULONG OSPlatformId
Definition: ntddk_ex.h:307
PVOID glContext
Definition: compat.h:523
__wchar_t WCHAR
Definition: xmlstorage.h:180
PVOID CsrClientThread
Definition: compat.h:494
struct _KTHREAD_HDR KTHREAD_HDR
ULONG HardErrorsAreDisabled
Definition: ntddk_ex.h:382
unsigned char * PUCHAR
Definition: retypes.h:3
char CHAR
Definition: xmlstorage.h:175
PVOID ReadOnlySharedMemoryHeap
Definition: ntddk_ex.h:266
PVOID EventLog
Definition: ntddk_ex.h:260
LIST_ENTRY InitializationOrder
Definition: ntddk_ex.h:205
struct _IMAGE_NT_HEADERS IMAGE_NT_HEADERS32
PVOID ActiveRpcHandle
Definition: compat.h:489
#define STATIC_UNICODE_BUFFER_LENGTH
Definition: ntddk_ex.h:331
BOOLEAN BeingDebugged
Definition: ntddk_ex.h:245
BOOLEAN DebugActive
Definition: ntddk_ex.h:418
PIMAGE_NT_HEADERS32 PIMAGE_NT_HEADERS
Definition: ntddk_ex.h:187
ULONG ModuleSize
Definition: ntddk_ex.h:208
WORD MinorOperatingSystemVersion
Definition: ntddk_ex.h:161
PVOID KernelStack
Definition: ntddk_ex.h:417
PPEB_FREE_BLOCK FreeList
Definition: ntddk_ex.h:261
PVOID ModuleBaseAddress
Definition: ntddk_ex.h:206
IMAGE_NT_HEADERS32 IMAGE_NT_HEADERS
Definition: ntddk_ex.h:186
ULONG WaitingOnLoaderLock
Definition: compat.h:541
#define NTSYSAPI
Definition: ntoskrnl.h:14
PVOID ModuleBaseAddress
Definition: ntddk_ex.h:78
PVOID WinSockData
Definition: compat.h:535
DWORD DWORD
Definition: winlogon.h:75
IMAGE_OPTIONAL_HEADER32 OptionalHeader
Definition: ntddk_ex.h:184
PVOID Teb
Definition: ntddk_ex.h:415
DWORD AddressOfNameOrdinals
Definition: compat.h:155
WORD MajorOperatingSystemVersion
Definition: ntddk_ex.h:160
CLIENT_ID ClientId
Definition: compat.h:488
HANDLE GdiCachedProcessHandle
Definition: compat.h:511
ULONG HeapDeCommitFreeBlockThreshold
Definition: ntddk_ex.h:282
#define GDI_BATCH_BUFFER_SIZE
Definition: ntddk_ex.h:319
PVOID ImageBaseAddress
Definition: ntddk_ex.h:249
ULONG NtGlobalFlag
Definition: ntddk_ex.h:274
UNICODE_STRING StaticUnicodeString
Definition: compat.h:525
PVOID GdiSharedHandleTable
Definition: ntddk_ex.h:296
PVOID ThreadLocalStoragePointer
Definition: compat.h:490
HANDLE Mutant
Definition: ntddk_ex.h:247
CHAR16 * String
Definition: acefiex.h:201
LIST_ENTRY LoadOrder
Definition: ntddk_ex.h:203
USHORT TlsIndex
Definition: ntddk_ex.h:213
BYTE SpareBytes1[36]
Definition: compat.h:504
NTSTATUS(* NTAPI)(IN PFILE_FULL_EA_INFORMATION EaBuffer, IN ULONG EaLength, OUT PULONG ErrorOffset)
Definition: IoEaTest.cpp:117
ULONG GdiClientTID
Definition: compat.h:513
NTHALAPI VOID NTAPI HalQueryDisplayParameters(OUT PULONG WidthInCharacters, OUT PULONG HeightInLines, OUT PULONG CursorColumn, OUT PULONG CursorRow)
Definition: display.c:43
UCHAR Iopl
Definition: ntddk_ex.h:421
struct _IMAGE_NT_HEADERS * PIMAGE_NT_HEADERS32
ULONG GdiClientPID
Definition: compat.h:512
long LONG
Definition: pedump.c:60
DWORD SizeOfUninitializedData
Definition: ntddk_ex.h:148
PVOID EntryPoint
Definition: ntddk_ex.h:207
ULONG CountOfOwnedCriticalSections
Definition: compat.h:493
ULONG TlsExpansionCounter
Definition: ntddk_ex.h:262
struct _LDR_DATA_TABLE_ENTRY * PLDR_DATA_TABLE_ENTRY
NTSYSAPI NTSTATUS NTAPI ZwQuerySystemInformation(IN SYSTEM_INFORMATION_CLASS SystemInfoClass, OUT PVOID SystemInfoBuffer, IN ULONG SystemInfoBufferSize, OUT PULONG BytesReturned OPTIONAL)
ULONG Spare4
Definition: compat.h:539
LIST_ENTRY LoadOrder
Definition: ntddk_ex.h:228
unsigned long DWORD
Definition: ntddk_ex.h:95
struct _IMAGE_DOS_HEADER * PIMAGE_DOS_HEADER
ULONG NumberOfHeaps
Definition: ntddk_ex.h:290
BOOLEAN ReadImageFileExecOptions
Definition: ntddk_ex.h:244
WORD SizeOfOptionalHeader
Definition: ntddk_ex.h:127
Definition: bufpool.h:45
PVOID glDispatchTable[280]
Definition: compat.h:516
struct _SYSTEM_MODULE_INFORMATION * PSYSTEM_MODULE_INFORMATION
struct _PEB PEB
IMAGE_FILE_HEADER FileHeader
Definition: ntddk_ex.h:183
ULONG Length
Definition: ntddk_ex.h:225
BOOLEAN Alerted[MaximumMode]
Definition: ntddk_ex.h:420
HANDLE SsHandle
Definition: ntddk_ex.h:227
PVOID TlsArray
Definition: ntddk_ex.h:416
PVOID Spare1
Definition: compat.h:501
PVOID KernelCallbackTable
Definition: ntddk_ex.h:258
unsigned char BOOLEAN
ULONG HeapSegmentCommit
Definition: ntddk_ex.h:280
ULONG TimeStamp
Definition: ntddk_ex.h:221
struct _PEB_LDR_DATA PEB_LDR_DATA
unsigned int BOOL
Definition: ntddk_ex.h:94
#define WIN32_CLIENT_INFO_LENGTH
Definition: ntddk_ex.h:332
struct _PEB_FREE_BLOCK * PPEB_FREE_BLOCK
Definition: ntddk_ex.h:74
DWORD NumberOfSymbols
Definition: ntddk_ex.h:126
PVOID * ProcessHeaps
Definition: ntddk_ex.h:292
ULONG MaximumNumberOfHeaps
Definition: ntddk_ex.h:291
PVOID DeallocationStack
Definition: compat.h:527
char CCHAR
Definition: typedefs.h:51
struct _SYSTEM_MODULE_ENTRY * PSYSTEM_MODULE_ENTRY
struct _IMAGE_FILE_HEADER * PIMAGE_FILE_HEADER
LCID CurrentLocale
Definition: ntddk_ex.h:348
struct _LDR_DATA_TABLE_ENTRY LDR_DATA_TABLE_ENTRY
CHAR ModuleName[256]
Definition: ntddk_ex.h:84
ULONG CheckSum
Definition: ntddk_ex.h:218
CLIENT_ID RealClientId
Definition: compat.h:510
PVOID DbgSsReserved[2]
Definition: compat.h:532
struct _IMAGE_EXPORT_DIRECTORY IMAGE_EXPORT_DIRECTORY
struct _IMAGE_DATA_DIRECTORY IMAGE_DATA_DIRECTORY
PVOID ProcessHeap
Definition: ntddk_ex.h:253
signed char SCHAR
Definition: sqltypes.h:14
ULONG Unused
Definition: ntddk_ex.h:76
PVOID ProcessStarterHelper
Definition: ntddk_ex.h:297
struct _IMAGE_DATA_DIRECTORY * PIMAGE_DATA_DIRECTORY
LARGE_INTEGER CriticalSectionTimeout
Definition: ntddk_ex.h:278
NTHALAPI VOID NTAPI HalSetDisplayParameters(IN ULONG CursorColumn, IN ULONG CursorRow)
Definition: display.c:57
LIST_ENTRY Hash
Definition: ntddk_ex.h:215
BOOLEAN SpareBool
Definition: ntddk_ex.h:246
struct _TEB TEB
SYSTEM_MODULE_ENTRY Module[1]
Definition: ntddk_ex.h:90
struct _GDI_TEB_BATCH * PGDI_TEB_BATCH
ULONG NtBuildNumber
Definition: init.c:47
ULONG FpSoftwareStatusRegister
Definition: compat.h:499
NTSTATUS ExceptionCode
Definition: ntddk_ex.h:352
WORD e_res2[10]
Definition: ntddk_ex.h:117
GDI_TEB_BATCH GdiTebBatch
Definition: compat.h:506
unsigned char UCHAR
Definition: xmlstorage.h:181
PVOID FastPebLock
Definition: ntddk_ex.h:254
ULONG OSBuildNumber
Definition: ntddk_ex.h:306
ULONG GdiBatchCount
Definition: compat.h:536
ULONG Always0
Definition: ntddk_ex.h:77
PVOID SystemReserved2[10]
Definition: compat.h:505
OUT PVOID SystemInfoBuffer
Definition: CrossNt.h:78
struct _IMAGE_OPTIONAL_HEADER * PIMAGE_OPTIONAL_HEADER32
ULONG ModuleSize
Definition: ntddk_ex.h:79
Definition: ntddk_ex.h:202
Definition: typedefs.h:118
NTHALAPI VOID NTAPI HalDisplayString(PUCHAR String)
struct _RTL_USER_PROCESS_PARAMETERS * ProcessParameters
Definition: ntddk_ex.h:251
PVOID UnicodeCaseTableData
Definition: ntddk_ex.h:270
PVOID GdiDCAttributeList
Definition: ntddk_ex.h:298
LIST_ENTRY MemoryOrder
Definition: ntddk_ex.h:204
PVOID LoaderLock
Definition: ntddk_ex.h:299
PVOID glSection
Definition: compat.h:520
struct _IMAGE_DOS_HEADER IMAGE_DOS_HEADER
SCHAR Priority
Definition: ntddk_ex.h:424
OUT PVOID IN ULONG SystemInfoBufferSize
Definition: CrossNt.h:78
unsigned char BYTE
Definition: ntddk_ex.h:96
PVOID UserReserved[5]
Definition: compat.h:515
PVOID SectionPointer
Definition: ntddk_ex.h:217
LIST_ENTRY MutantListHead
Definition: ntddk_ex.h:403
Definition: compat.h:484
ULONG Offset
Definition: compat.h:480
ULONG HeapDeCommitTotalFreeThreshold
Definition: ntddk_ex.h:281
ULONG OSMinorVersion
Definition: ntddk_ex.h:305
DWORD *typedef HANDLE
Definition: winlogon.h:52
LONG NTSTATUS
Definition: DriverTester.h:11
KAFFINITY ActiveProcessorsAffinityMask
Definition: ntddk_ex.h:171
Definition: ntddk_ex.h:242
ULONG Spare3
Definition: compat.h:538
UNICODE_STRING ModuleName
Definition: ntddk_ex.h:210
unsigned short USHORT
Definition: pedump.c:61
ULONG_PTR KAFFINITY
Definition: compat.h:75
PVOID ReservedForOle
Definition: compat.h:540
PPEB_LDR_DATA Ldr
Definition: ntddk_ex.h:250
DWORD PointerToSymbolTable
Definition: ntddk_ex.h:125
PVOID SystemReserved1[54]
Definition: compat.h:500
_In_ FILTER_INFORMATION_CLASS _In_ ULONG _Out_ PULONG BytesReturned
Definition: fltkernel.h:1716
ULONG NumberOfProcessors
Definition: ntddk_ex.h:273
TEB * PTEB
Definition: ntddk_ex.h:392
unsigned int * PULONG
Definition: retypes.h:1
struct _SYSTEM_BASIC_INFORMATION SYSTEM_BASIC_INFORMATION
struct _PEB_FREE_BLOCK PEB_FREE_BLOCK
struct _PEB_LDR_DATA * PPEB_LDR_DATA
ULONG TlsBitmapBits[2]
Definition: ntddk_ex.h:264
UCHAR NpxState
Definition: ntddk_ex.h:422
struct _GDI_TEB_BATCH GDI_TEB_BATCH
PVOID InitialStack
Definition: ntddk_ex.h:413
struct _SYSTEM_BASIC_INFORMATION * PSYSTEM_BASIC_INFORMATION
PVOID OemCodePageData
Definition: ntddk_ex.h:269
struct _IMAGE_FILE_HEADER IMAGE_FILE_HEADER
#define OUT
Definition: typedefs.h:40
ULONG Flags
Definition: ntddk_ex.h:211
PVOID StackLimit
Definition: ntddk_ex.h:414
PVOID glSectionInfo
Definition: compat.h:519
ULONG LastErrorValue
Definition: compat.h:492
unsigned int ULONG
Definition: retypes.h:1
ULONG Unknown
Definition: ntddk_ex.h:80
struct _SYSTEM_MODULE_ENTRY SYSTEM_MODULE_ENTRY
PVOID ReadOnlySharedMemoryBase
Definition: ntddk_ex.h:265
PVOID * ReadOnlyStaticServerData
Definition: ntddk_ex.h:267
struct _SYSTEM_MODULE_INFORMATION SYSTEM_MODULE_INFORMATION
HANDLE EventLogSection
Definition: ntddk_ex.h:259
PVOID TlsSlots[64]
Definition: compat.h:528
DISPATCHER_HEADER Header
Definition: ntddk_ex.h:402
PVOID GdiThreadLocalInfo
Definition: ntddk_ex.h:363
ULONG EnvironmentUpdateCount
Definition: ntddk_ex.h:257
ULONG OSMajorVersion
Definition: ntddk_ex.h:304
BOOLEAN InheritedAddressSpace
Definition: ntddk_ex.h:243
PVOID FastPebLockRoutine
Definition: ntddk_ex.h:255
struct _PEB * PPEB
ULONG GdiHandleBuffer[GDI_HANDLE_BUFFER_SIZE]
Definition: ntddk_ex.h:312
ULONG gdiPen
Definition: compat.h:508
USHORT ModuleNameLength
Definition: ntddk_ex.h:82
struct _PEB_FREE_BLOCK * Next
Definition: ntddk_ex.h:234
ULONG Spare2
Definition: compat.h:537
PVOID TlsBitmap
Definition: ntddk_ex.h:263
struct _IMAGE_EXPORT_DIRECTORY * PIMAGE_EXPORT_DIRECTORY
DWORD LCID
Definition: nls.h:14
PVOID ReservedForNtRpc
Definition: compat.h:531
PVOID glTable
Definition: compat.h:521
ULONG LastStatusValue
Definition: compat.h:524
NT_TIB NtTib
Definition: ntddk_ex.h:336
PVOID AnsiCodePageData
Definition: ntddk_ex.h:268
IN HDEVINFO IN PSP_DEVINFO_DATA DeviceInfoData OPTIONAL
Definition: devinst.c:44
PVOID Vdm
Definition: compat.h:530
UNICODE_STRING FullModuleName
Definition: ntddk_ex.h:209
ULONG ImageSubsystemMinorVersion
Definition: ntddk_ex.h:310
USHORT LoadCount
Definition: ntddk_ex.h:212
#define TLS_MINIMUM_AVAILABLE
Definition: ntddk_ex.h:240
UCHAR State
Definition: ntddk_ex.h:419
ULONG ImageSubsystem
Definition: ntddk_ex.h:308
BOOLEAN Saturation
Definition: ntddk_ex.h:423
struct _KTHREAD_HDR * PKTHREAD_HDR