📄 win32k.h
字号:
struct LIST_ENTRY64 {
DWORD Flink;
DWORD Blink;
};
struct LIST_ENTRY64 {
DWORD Flink;
DWORD Blink;
};
struct LIST_ENTRY32 {
DWORD Flink;
DWORD Blink;
};
struct LIST_ENTRY32 {
DWORD Flink;
DWORD Blink;
};
struct _GUID {
DWORD Data1;
DWORD Data2;
DWORD Data3;
DWORD Data4[8];
};
struct _GUID {
DWORD Data1;
DWORD Data2;
DWORD Data3;
DWORD Data4[8];
};
struct _GUID {
DWORD Data1;
DWORD Data2;
DWORD Data3;
DWORD Data4[8];
};
struct _LIST_ENTRY {
_LIST_ENTRY* Flink;
_LIST_ENTRY* Blink;
};
struct _LIST_ENTRY {
_LIST_ENTRY* Flink;
_LIST_ENTRY* Blink;
};
struct _IMAGE_NT_HEADERS {
DWORD Signature;
_IMAGE_FILE_HEADER FileHeader;
_IMAGE_OPTIONAL_HEADER OptionalHeader;
};
struct _IMAGE_FILE_HEADER {
DWORD Machine;
DWORD NumberOfSections;
DWORD TimeDateStamp;
DWORD PointerToSymbolTable;
DWORD NumberOfSymbols;
DWORD SizeOfOptionalHeader;
DWORD Characteristics;
};
struct _IMAGE_OPTIONAL_HEADER {
DWORD Magic;
DWORD MajorLinkerVersion;
DWORD MinorLinkerVersion;
DWORD SizeOfCode;
DWORD SizeOfInitializedData;
DWORD SizeOfUninitializedData;
DWORD AddressOfEntryPoint;
DWORD BaseOfCode;
DWORD BaseOfData;
DWORD ImageBase;
DWORD SectionAlignment;
DWORD FileAlignment;
DWORD MajorOperatingSystemVersion;
DWORD MinorOperatingSystemVersion;
DWORD MajorImageVersion;
DWORD MinorImageVersion;
DWORD MajorSubsystemVersion;
DWORD MinorSubsystemVersion;
DWORD Win32VersionValue;
DWORD SizeOfImage;
DWORD SizeOfHeaders;
DWORD CheckSum;
DWORD Subsystem;
DWORD DllCharacteristics;
DWORD SizeOfStackReserve;
DWORD SizeOfStackCommit;
DWORD SizeOfHeapReserve;
DWORD SizeOfHeapCommit;
DWORD LoaderFlags;
DWORD NumberOfRvaAndSizes;
_IMAGE_DATA_DIRECTORY DataDirectory[16];
};
struct _IMAGE_NT_HEADERS {
DWORD Signature;
_IMAGE_FILE_HEADER FileHeader;
_IMAGE_OPTIONAL_HEADER OptionalHeader;
};
struct _LARGE_INTEGER {
DWORD LowPart;
int HighPart;
_LARGE_INTEGER::__unnamed u;
int QuadPart;
};
struct _LARGE_INTEGER::__unnamed {
DWORD LowPart;
int HighPart;
};
struct _LARGE_INTEGER {
DWORD LowPart;
int HighPart;
_LARGE_INTEGER::__unnamed u;
int QuadPart;
};
struct _ULARGE_INTEGER {
DWORD LowPart;
DWORD HighPart;
_ULARGE_INTEGER::__unnamed u;
DWORD QuadPart;
};
struct _ULARGE_INTEGER::__unnamed {
DWORD LowPart;
DWORD HighPart;
};
struct _ULARGE_INTEGER {
DWORD LowPart;
DWORD HighPart;
_ULARGE_INTEGER::__unnamed u;
DWORD QuadPart;
};
struct _LUID {
DWORD LowPart;
int HighPart;
};
struct _LUID {
DWORD LowPart;
int HighPart;
};
struct _SLIST_HEADER {
DWORD Alignment;
_SINGLE_LIST_ENTRY Next;
DWORD Depth;
DWORD Sequence;
};
struct _SINGLE_LIST_ENTRY {
_SINGLE_LIST_ENTRY* Next;
};
struct _SLIST_HEADER {
DWORD Alignment;
_SINGLE_LIST_ENTRY Next;
DWORD Depth;
DWORD Sequence;
};
struct _NPAGED_LOOKASIDE_LIST {
_GENERAL_LOOKASIDE L;
DWORD Lock__ObsoleteButDoNotDelete;
};
struct _GENERAL_LOOKASIDE {
_SLIST_HEADER ListHead;
DWORD Depth;
DWORD MaximumDepth;
DWORD TotalAllocates;
DWORD AllocateMisses;
DWORD AllocateHits;
DWORD TotalFrees;
DWORD FreeMisses;
DWORD FreeHits;
enum _POOL_TYPE Type;
DWORD Tag;
DWORD Size;
void* (*Allocate)(enum _POOL_TYPE, DWORD, DWORD);
void (*Free)(void*);
_LIST_ENTRY ListEntry;
DWORD LastTotalAllocates;
DWORD LastAllocateMisses;
DWORD LastAllocateHits;
DWORD Future[2];
};
struct _NPAGED_LOOKASIDE_LIST {
_GENERAL_LOOKASIDE L;
DWORD Lock__ObsoleteButDoNotDelete;
};
struct _PAGED_LOOKASIDE_LIST {
_GENERAL_LOOKASIDE L;
_FAST_MUTEX Lock__ObsoleteButDoNotDelete;
};
struct _FAST_MUTEX {
int Count;
_KTHREAD* Owner;
DWORD Contention;
_KEVENT Event;
DWORD OldIrql;
};
struct _PAGED_LOOKASIDE_LIST {
_GENERAL_LOOKASIDE L;
_FAST_MUTEX Lock__ObsoleteButDoNotDelete;
};
struct _EX_RUNDOWN_REF {
DWORD Count;
void* Ptr;
};
struct _EX_RUNDOWN_REF {
DWORD Count;
void* Ptr;
};
struct _ETHREAD {
};
struct _EPROCESS {
};
struct _OBJECT_ATTRIBUTES {
DWORD Length;
void* RootDirectory;
_UNICODE_STRING* ObjectName;
DWORD Attributes;
void* SecurityDescriptor;
void* SecurityQualityOfService;
};
struct _UNICODE_STRING {
DWORD Length;
DWORD MaximumLength;
DWORD* Buffer;
};
struct _OBJECT_ATTRIBUTES {
DWORD Length;
void* RootDirectory;
_UNICODE_STRING* ObjectName;
DWORD Attributes;
void* SecurityDescriptor;
void* SecurityQualityOfService;
};
struct _OBJECT_TYPE {
_ERESOURCE Mutex;
_LIST_ENTRY TypeList;
_UNICODE_STRING Name;
void* DefaultObject;
DWORD Index;
DWORD TotalNumberOfObjects;
DWORD TotalNumberOfHandles;
DWORD HighWaterNumberOfObjects;
DWORD HighWaterNumberOfHandles;
_OBJECT_TYPE_INITIALIZER TypeInfo;
DWORD Key;
_ERESOURCE ObjectLocks[4];
};
struct _ERESOURCE {
_LIST_ENTRY SystemResourcesList;
_OWNER_ENTRY* OwnerTable;
int ActiveCount;
DWORD Flag;
_KSEMAPHORE* SharedWaiters;
_KEVENT* ExclusiveWaiters;
_OWNER_ENTRY OwnerThreads[2];
DWORD ContentionCount;
DWORD NumberOfSharedWaiters;
DWORD NumberOfExclusiveWaiters;
void* Address;
DWORD CreatorBackTraceIndex;
DWORD SpinLock;
};
struct _OBJECT_TYPE_INITIALIZER {
DWORD Length;
DWORD UseDefaultObject;
DWORD CaseInsensitive;
DWORD InvalidAttributes;
_GENERIC_MAPPING GenericMapping;
DWORD ValidAccessMask;
DWORD SecurityRequired;
DWORD MaintainHandleCount;
DWORD MaintainTypeList;
enum _POOL_TYPE PoolType;
DWORD DefaultPagedPoolCharge;
DWORD DefaultNonPagedPoolCharge;
void (*DumpProcedure)(void*, _OBJECT_DUMP_CONTROL*);
int (*OpenProcedure)(enum _OB_OPEN_REASON, _EPROCESS*, void*, DWORD, DWORD);
void (*CloseProcedure)(_EPROCESS*, void*, DWORD, DWORD, DWORD);
void (*DeleteProcedure)(void*);
int (*ParseProcedure)(void*, void*, _ACCESS_STATE*, char, DWORD, _UNICODE_STRING*, _UNICODE_STRING*, void*, _SECURITY_QUALITY_OF_SERVICE*, void**);
int (*SecurityProcedure)(void*, enum _SECURITY_OPERATION_CODE, DWORD*, void*, DWORD*, void**, enum _POOL_TYPE, _GENERIC_MAPPING*);
int (*QueryNameProcedure)(void*, DWORD, _OBJECT_NAME_INFORMATION*, DWORD, DWORD*);
DWORD (*OkayToCloseProcedure)(_EPROCESS*, void*, void*, char);
};
struct _OBJECT_TYPE {
_ERESOURCE Mutex;
_LIST_ENTRY TypeList;
_UNICODE_STRING Name;
void* DefaultObject;
DWORD Index;
DWORD TotalNumberOfObjects;
DWORD TotalNumberOfHandles;
DWORD HighWaterNumberOfObjects;
DWORD HighWaterNumberOfHandles;
_OBJECT_TYPE_INITIALIZER TypeInfo;
DWORD Key;
_ERESOURCE ObjectLocks[4];
};
struct _OBJECT_HANDLE_INFORMATION {
DWORD HandleAttributes;
DWORD GrantedAccess;
};
struct _OBJECT_HANDLE_INFORMATION {
DWORD HandleAttributes;
DWORD GrantedAccess;
};
struct _TL {
_TL* next;
void* pobj;
void (*pfnFree)(void*);
};
struct _TL {
_TL* next;
void* pobj;
void (*pfnFree)(void*);
};
struct _W32THREAD {
_ETHREAD* pEThread;
DWORD RefCount;
_TL* ptlW32;
void* pgdiDcattr;
void* pgdiBrushAttr;
void* pUMPDObjs;
void* pUMPDHeap;
DWORD dwEngAcquireCount;
void* pSemTable;
void* pUMPDObj;
};
struct _W32THREAD {
_ETHREAD* pEThread;
DWORD RefCount;
_TL* ptlW32;
void* pgdiDcattr;
void* pgdiBrushAttr;
void* pUMPDObjs;
void* pUMPDHeap;
DWORD dwEngAcquireCount;
void* pSemTable;
void* pUMPDObj;
};
struct _FILE_OBJECT {
int Type;
int Size;
_DEVICE_OBJECT* DeviceObject;
_VPB* Vpb;
void* FsContext;
void* FsContext2;
_SECTION_OBJECT_POINTERS* SectionObjectPointer;
void* PrivateCacheMap;
int FinalStatus;
_FILE_OBJECT* RelatedFileObject;
DWORD LockOperation;
DWORD DeletePending;
DWORD ReadAccess;
DWORD WriteAccess;
DWORD DeleteAccess;
DWORD SharedRead;
DWORD SharedWrite;
DWORD SharedDelete;
DWORD Flags;
_UNICODE_STRING FileName;
_LARGE_INTEGER CurrentByteOffset;
DWORD Waiters;
DWORD Busy;
void* LastLock;
_KEVENT Lock;
_KEVENT Event;
_IO_COMPLETION_CONTEXT* CompletionContext;
};
struct _DEVICE_OBJECT {
int Type;
DWORD Size;
int ReferenceCount;
_DRIVER_OBJECT* DriverObject;
_DEVICE_OBJECT* NextDevice;
_DEVICE_OBJECT* AttachedDevice;
_IRP* CurrentIrp;
_IO_TIMER* Timer;
DWORD Flags;
DWORD Characteristics;
_VPB* Vpb;
void* DeviceExtension;
DWORD DeviceType;
char StackSize;
_DEVICE_OBJECT::__unnamed Queue;
DWORD AlignmentRequirement;
_KDEVICE_QUEUE DeviceQueue;
_KDPC Dpc;
DWORD ActiveThreadCount;
void* SecurityDescriptor;
_KEVENT DeviceLock;
DWORD SectorSize;
DWORD Spare1;
_DEVOBJ_EXTENSION* DeviceObjectExtension;
void* Reserved;
};
struct _VPB {
int Type;
int Size;
DWORD Flags;
DWORD VolumeLabelLength;
_DEVICE_OBJECT* DeviceObject;
_DEVICE_OBJECT* RealDevice;
DWORD SerialNumber;
DWORD ReferenceCount;
DWORD VolumeLabel[32];
};
struct _SECTION_OBJECT_POINTERS {
void* DataSectionObject;
void* SharedCacheMap;
void* ImageSectionObject;
};
struct _KEVENT {
_DISPATCHER_HEADER Header;
};
struct _IO_COMPLETION_CONTEXT {
void* Port;
void* Key;
};
struct _FILE_OBJECT {
int Type;
int Size;
_DEVICE_OBJECT* DeviceObject;
_VPB* Vpb;
void* FsContext;
void* FsContext2;
_SECTION_OBJECT_POINTERS* SectionObjectPointer;
void* PrivateCacheMap;
int FinalStatus;
_FILE_OBJECT* RelatedFileObject;
DWORD LockOperation;
DWORD DeletePending;
DWORD ReadAccess;
DWORD WriteAccess;
DWORD DeleteAccess;
DWORD SharedRead;
DWORD SharedWrite;
DWORD SharedDelete;
DWORD Flags;
_UNICODE_STRING FileName;
_LARGE_INTEGER CurrentByteOffset;
DWORD Waiters;
DWORD Busy;
void* LastLock;
_KEVENT Lock;
_KEVENT Event;
_IO_COMPLETION_CONTEXT* CompletionContext;
};
struct _UNICODE_STRING {
DWORD Length;
DWORD MaximumLength;
DWORD* Buffer;
};
struct _UNICODE_STRING {
DWORD Length;
DWORD MaximumLength;
DWORD* Buffer;
};
struct _KTHREAD {
};
struct _FAST_MUTEX {
int Count;
_KTHREAD* Owner;
DWORD Contention;
_KEVENT Event;
DWORD OldIrql;
};
struct _IMAGE_FILE_HEADER {
DWORD Machine;
DWORD NumberOfSections;
DWORD TimeDateStamp;
DWORD PointerToSymbolTable;
DWORD NumberOfSymbols;
DWORD SizeOfOptionalHeader;
DWORD Characteristics;
};
enum _POOL_TYPE {
NonPagedPool,
PagedPool,
NonPagedPoolMustSucceed,
DontUseThisType,
NonPagedPoolCacheAligned,
PagedPoolCacheAligned,
NonPagedPoolCacheAlignedMustS,
MaxPoolType,
NonPagedPoolSession,
PagedPoolSession,
NonPagedPoolMustSucceedSession,
DontUseThisTypeSession,
NonPagedPoolCacheAlignedSession,
PagedPoolCacheAlignedSession,
NonPagedPoolCacheAlignedMustSSession,
};
struct _GENERAL_LOOKASIDE {
_SLIST_HEADER ListHead;
DWORD Depth;
DWORD MaximumDepth;
DWORD TotalAllocates;
DWORD AllocateMisses;
DWORD AllocateHits;
DWORD TotalFrees;
DWORD FreeMisses;
DWORD FreeHits;
enum _POOL_TYPE Type;
DWORD Tag;
DWORD Size;
void* (*Allocate)(enum _POOL_TYPE, DWORD, DWORD);
void (*Free)(void*);
_LIST_ENTRY ListEntry;
DWORD LastTotalAllocates;
DWORD LastAllocateMisses;
DWORD LastAllocateHits;
DWORD Future[2];
};
struct _GENERAL_LOOKASIDE::__unnamed {
DWORD AllocateMisses;
DWORD AllocateHits;
};
struct _GENERAL_LOOKASIDE::__unnamed {
DWORD FreeMisses;
DWORD FreeHits;
};
struct _GENERAL_LOOKASIDE::__unnamed {
DWORD LastAllocateMisses;
DWORD LastAllocateHits;
};
struct _IO_COMPLETION_CONTEXT {
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -