📄 processr.h
字号:
void (*InterfaceDereference)(void*);
};
struct __unnamed {
_GUID* InterfaceType;
DWORD Size;
DWORD Version;
_INTERFACE* Interface;
void* InterfaceSpecificData;
};
struct __unnamed {
_DEVICE_CAPABILITIES* Capabilities;
};
struct _IO_RESOURCE_REQUIREMENTS_LIST {
DWORD ListSize;
enum _INTERFACE_TYPE InterfaceType;
DWORD BusNumber;
DWORD SlotNumber;
DWORD Reserved[3];
DWORD AlternativeLists;
_IO_RESOURCE_LIST List[1];
};
struct __unnamed {
_IO_RESOURCE_REQUIREMENTS_LIST* IoResourceRequirementList;
};
struct __unnamed {
DWORD WhichSpace;
void* Buffer;
DWORD Offset;
DWORD Length;
};
struct __unnamed {
DWORD Lock;
};
enum BUS_QUERY_ID_TYPE {
BusQueryDeviceID,
BusQueryHardwareIDs,
BusQueryCompatibleIDs,
BusQueryInstanceID,
BusQueryDeviceSerialNumber,
};
struct __unnamed {
enum BUS_QUERY_ID_TYPE IdType;
};
enum DEVICE_TEXT_TYPE {
DeviceTextDescription,
DeviceTextLocationInformation,
};
struct __unnamed {
enum DEVICE_TEXT_TYPE DeviceTextType;
DWORD LocaleId;
};
enum _DEVICE_USAGE_NOTIFICATION_TYPE {
DeviceUsageTypeUndefined,
DeviceUsageTypePaging,
DeviceUsageTypeHibernation,
DeviceUsageTypeDumpFile,
};
struct __unnamed {
DWORD InPath;
DWORD Reserved[3];
enum _DEVICE_USAGE_NOTIFICATION_TYPE Type;
};
struct __unnamed {
enum _SYSTEM_POWER_STATE PowerState;
};
struct _POWER_SEQUENCE {
DWORD SequenceD1;
DWORD SequenceD2;
DWORD SequenceD3;
};
struct __unnamed {
_POWER_SEQUENCE* PowerSequence;
};
enum _POWER_STATE_TYPE {
SystemPowerState,
DevicePowerState,
};
struct _POWER_STATE {
enum _SYSTEM_POWER_STATE SystemState;
enum _DEVICE_POWER_STATE DeviceState;
};
enum POWER_ACTION {
PowerActionNone,
PowerActionReserved,
PowerActionSleep,
PowerActionHibernate,
PowerActionShutdown,
PowerActionShutdownReset,
PowerActionShutdownOff,
PowerActionWarmEject,
};
struct __unnamed {
DWORD SystemContext;
enum _POWER_STATE_TYPE Type;
_POWER_STATE State;
enum POWER_ACTION ShutdownType;
};
struct _CM_RESOURCE_LIST {
DWORD Count;
_CM_FULL_RESOURCE_DESCRIPTOR List[1];
};
struct __unnamed {
_CM_RESOURCE_LIST* AllocatedResources;
_CM_RESOURCE_LIST* AllocatedResourcesTranslated;
};
struct __unnamed {
DWORD ProviderId;
void* DataPath;
DWORD BufferSize;
void* Buffer;
};
struct __unnamed {
void* Argument1;
void* Argument2;
void* Argument3;
void* Argument4;
};
struct __unnamed {
__unnamed Create;
__unnamed Read;
__unnamed Write;
__unnamed QueryFile;
__unnamed SetFile;
__unnamed QueryVolume;
__unnamed DeviceIoControl;
__unnamed QuerySecurity;
__unnamed SetSecurity;
__unnamed MountVolume;
__unnamed VerifyVolume;
__unnamed Scsi;
__unnamed QueryDeviceRelations;
__unnamed QueryInterface;
__unnamed DeviceCapabilities;
__unnamed FilterResourceRequirements;
__unnamed ReadWriteConfig;
__unnamed SetLock;
__unnamed QueryId;
__unnamed QueryDeviceText;
__unnamed UsageNotification;
__unnamed WaitWake;
__unnamed PowerSequence;
__unnamed Power;
__unnamed StartDevice;
__unnamed WMI;
__unnamed Others;
};
struct _IO_STACK_LOCATION {
DWORD MajorFunction;
DWORD MinorFunction;
DWORD Flags;
DWORD Control;
__unnamed Parameters;
_DEVICE_OBJECT* DeviceObject;
_FILE_OBJECT* FileObject;
int (*CompletionRoutine)(_DEVICE_OBJECT*, _IRP*, void*);
void* Context;
};
struct _INTERFACE {
DWORD Size;
DWORD Version;
void* Context;
void (*InterfaceReference)(void*);
void (*InterfaceDereference)(void*);
};
struct _POWER_STATE {
enum _SYSTEM_POWER_STATE SystemState;
enum _DEVICE_POWER_STATE DeviceState;
};
enum _INTERFACE_TYPE {
InterfaceTypeUndefined,
Internal,
Isa,
Eisa,
MicroChannel,
TurboChannel,
PCIBus,
VMEBus,
NuBus,
PCMCIABus,
CBus,
MPIBus,
MPSABus,
ProcessorInternal,
InternalPowerBus,
PNPISABus,
PNPBus,
MaximumInterfaceType,
};
struct _IO_RESOURCE_LIST {
DWORD Version;
DWORD Revision;
DWORD Count;
_IO_RESOURCE_DESCRIPTOR Descriptors[1];
};
struct _IO_RESOURCE_REQUIREMENTS_LIST {
DWORD ListSize;
enum _INTERFACE_TYPE InterfaceType;
DWORD BusNumber;
DWORD SlotNumber;
DWORD Reserved[3];
DWORD AlternativeLists;
_IO_RESOURCE_LIST List[1];
};
struct _FILE_BASIC_INFORMATION {
_LARGE_INTEGER CreationTime;
_LARGE_INTEGER LastAccessTime;
_LARGE_INTEGER LastWriteTime;
_LARGE_INTEGER ChangeTime;
DWORD FileAttributes;
};
struct _FILE_STANDARD_INFORMATION {
_LARGE_INTEGER AllocationSize;
_LARGE_INTEGER EndOfFile;
DWORD NumberOfLinks;
DWORD DeletePending;
DWORD Directory;
};
struct _FILE_NETWORK_OPEN_INFORMATION {
_LARGE_INTEGER CreationTime;
_LARGE_INTEGER LastAccessTime;
_LARGE_INTEGER LastWriteTime;
_LARGE_INTEGER ChangeTime;
_LARGE_INTEGER AllocationSize;
_LARGE_INTEGER EndOfFile;
DWORD FileAttributes;
};
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 _COMPRESSED_DATA_INFO {
};
struct _FAST_IO_DISPATCH {
DWORD SizeOfFastIoDispatch;
DWORD (*FastIoCheckIfPossible)(_FILE_OBJECT*, _LARGE_INTEGER*, DWORD, DWORD, DWORD, DWORD, _IO_STATUS_BLOCK*, _DEVICE_OBJECT*);
DWORD (*FastIoRead)(_FILE_OBJECT*, _LARGE_INTEGER*, DWORD, DWORD, DWORD, void*, _IO_STATUS_BLOCK*, _DEVICE_OBJECT*);
DWORD (*FastIoWrite)(_FILE_OBJECT*, _LARGE_INTEGER*, DWORD, DWORD, DWORD, void*, _IO_STATUS_BLOCK*, _DEVICE_OBJECT*);
DWORD (*FastIoQueryBasicInfo)(_FILE_OBJECT*, DWORD, _FILE_BASIC_INFORMATION*, _IO_STATUS_BLOCK*, _DEVICE_OBJECT*);
DWORD (*FastIoQueryStandardInfo)(_FILE_OBJECT*, DWORD, _FILE_STANDARD_INFORMATION*, _IO_STATUS_BLOCK*, _DEVICE_OBJECT*);
DWORD (*FastIoLock)(_FILE_OBJECT*, _LARGE_INTEGER*, _LARGE_INTEGER*, _EPROCESS*, DWORD, DWORD, DWORD, _IO_STATUS_BLOCK*, _DEVICE_OBJECT*);
DWORD (*FastIoUnlockSingle)(_FILE_OBJECT*, _LARGE_INTEGER*, _LARGE_INTEGER*, _EPROCESS*, DWORD, _IO_STATUS_BLOCK*, _DEVICE_OBJECT*);
DWORD (*FastIoUnlockAll)(_FILE_OBJECT*, _EPROCESS*, _IO_STATUS_BLOCK*, _DEVICE_OBJECT*);
DWORD (*FastIoUnlockAllByKey)(_FILE_OBJECT*, void*, DWORD, _IO_STATUS_BLOCK*, _DEVICE_OBJECT*);
DWORD (*FastIoDeviceControl)(_FILE_OBJECT*, DWORD, void*, DWORD, void*, DWORD, DWORD, _IO_STATUS_BLOCK*, _DEVICE_OBJECT*);
void (*AcquireFileForNtCreateSection)(_FILE_OBJECT*);
void (*ReleaseFileForNtCreateSection)(_FILE_OBJECT*);
void (*FastIoDetachDevice)(_DEVICE_OBJECT*, _DEVICE_OBJECT*);
DWORD (*FastIoQueryNetworkOpenInfo)(_FILE_OBJECT*, DWORD, _FILE_NETWORK_OPEN_INFORMATION*, _IO_STATUS_BLOCK*, _DEVICE_OBJECT*);
int (*AcquireForModWrite)(_FILE_OBJECT*, _LARGE_INTEGER*, _ERESOURCE**, _DEVICE_OBJECT*);
DWORD (*MdlRead)(_FILE_OBJECT*, _LARGE_INTEGER*, DWORD, DWORD, _MDL**, _IO_STATUS_BLOCK*, _DEVICE_OBJECT*);
DWORD (*MdlReadComplete)(_FILE_OBJECT*, _MDL*, _DEVICE_OBJECT*);
DWORD (*PrepareMdlWrite)(_FILE_OBJECT*, _LARGE_INTEGER*, DWORD, DWORD, _MDL**, _IO_STATUS_BLOCK*, _DEVICE_OBJECT*);
DWORD (*MdlWriteComplete)(_FILE_OBJECT*, _LARGE_INTEGER*, _MDL*, _DEVICE_OBJECT*);
DWORD (*FastIoReadCompressed)(_FILE_OBJECT*, _LARGE_INTEGER*, DWORD, DWORD, void*, _MDL**, _IO_STATUS_BLOCK*, _COMPRESSED_DATA_INFO*, DWORD, _DEVICE_OBJECT*);
DWORD (*FastIoWriteCompressed)(_FILE_OBJECT*, _LARGE_INTEGER*, DWORD, DWORD, void*, _MDL**, _IO_STATUS_BLOCK*, _COMPRESSED_DATA_INFO*, DWORD, _DEVICE_OBJECT*);
DWORD (*MdlReadCompleteCompressed)(_FILE_OBJECT*, _MDL*, _DEVICE_OBJECT*);
DWORD (*MdlWriteCompleteCompressed)(_FILE_OBJECT*, _LARGE_INTEGER*, _MDL*, _DEVICE_OBJECT*);
DWORD (*FastIoQueryOpen)(_IRP*, _FILE_NETWORK_OPEN_INFORMATION*, _DEVICE_OBJECT*);
int (*ReleaseForModWrite)(_FILE_OBJECT*, _ERESOURCE*, _DEVICE_OBJECT*);
int (*AcquireForCcFlush)(_FILE_OBJECT*, _DEVICE_OBJECT*);
int (*ReleaseForCcFlush)(_FILE_OBJECT*, _DEVICE_OBJECT*);
};
struct _FILE_BASIC_INFORMATION {
_LARGE_INTEGER CreationTime;
_LARGE_INTEGER LastAccessTime;
_LARGE_INTEGER LastWriteTime;
_LARGE_INTEGER ChangeTime;
DWORD FileAttributes;
};
struct _SECURITY_QUALITY_OF_SERVICE {
DWORD Length;
enum _SECURITY_IMPERSONATION_LEVEL ImpersonationLevel;
DWORD ContextTrackingMode;
DWORD EffectiveOnly;
};
struct _ACCESS_STATE {
_LUID OperationID;
DWORD SecurityEvaluated;
DWORD GenerateAudit;
DWORD GenerateOnClose;
DWORD PrivilegesAllocated;
DWORD Flags;
DWORD RemainingDesiredAccess;
DWORD PreviouslyGrantedAccess;
DWORD OriginalDesiredAccess;
_SECURITY_SUBJECT_CONTEXT SubjectSecurityContext;
void* SecurityDescriptor;
void* AuxData;
__unnamed Privileges;
DWORD AuditPrivileges;
_UNICODE_STRING ObjectName;
_UNICODE_STRING ObjectTypeName;
};
struct _IO_SECURITY_CONTEXT {
_SECURITY_QUALITY_OF_SERVICE* SecurityQos;
_ACCESS_STATE* AccessState;
DWORD DesiredAccess;
DWORD FullCreateOptions;
};
struct _IO_RESOURCE_DESCRIPTOR {
DWORD Option;
DWORD Type;
DWORD ShareDisposition;
DWORD Spare1;
DWORD Flags;
DWORD Spare2;
__unnamed u;
};
struct _IO_RESOURCE_LIST {
DWORD Version;
DWORD Revision;
DWORD Count;
_IO_RESOURCE_DESCRIPTOR Descriptors[1];
};
struct _FILE_NETWORK_OPEN_INFORMATION {
_LARGE_INTEGER CreationTime;
_LARGE_INTEGER LastAccessTime;
_LARGE_INTEGER LastWriteTime;
_LARGE_INTEGER ChangeTime;
_LARGE_INTEGER AllocationSize;
_LARGE_INTEGER EndOfFile;
DWORD FileAttributes;
};
struct _CM_FULL_RESOURCE_DESCRIPTOR {
enum _INTERFACE_TYPE InterfaceType;
DWORD BusNumber;
_CM_PARTIAL_RESOURCE_LIST PartialResourceList;
};
struct _CM_RESOURCE_LIST {
DWORD Count;
_CM_FULL_RESOURCE_DESCRIPTOR List[1];
};
struct _SECURITY_SUBJECT_CONTEXT {
void* ClientToken;
enum _SECURITY_IMPERSONATION_LEVEL ImpersonationLevel;
void* PrimaryToken;
void* ProcessAuditId;
};
struct _INITIAL_PRIVILEGE_SET {
DWORD PrivilegeCount;
DWORD Control;
_LUID_AND_ATTRIBUTES Privilege[3];
};
struct _PRIVILEGE_SET {
DWORD PrivilegeCount;
DWORD Control;
_LUID_AND_ATTRIBUTES Privilege[1];
};
struct __unnamed {
_INITIAL_PRIVILEGE_SET InitialPrivilegeSet;
_PRIVILEGE_SET PrivilegeSet;
};
struct _ACCESS_STATE {
_LUID OperationID;
DWORD SecurityEvaluated;
DWORD GenerateAudit;
DWORD GenerateOnClose;
DWORD PrivilegesAllocated;
DWORD Flags;
DWORD RemainingDesiredAccess;
DWORD PreviouslyGrantedAccess;
DWORD OriginalDesiredAccess;
_SECURITY_SUBJECT_CONTEXT SubjectSecurityContext;
void* SecurityDescriptor;
void* AuxData;
__unnamed Privileges;
DWORD AuditPrivileges;
_UNICODE_STRING ObjectName;
_UNICODE_STRING ObjectTypeName;
};
struct _OWNER_ENTRY {
DWORD OwnerThread;
int OwnerCount;
DWORD TableSize;
};
struct _KSEMAPHORE {
_DISPATCHER_HEADER Header;
int Limit;
};
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 _KSEMAPHORE {
_DISPATCHER_HEADER Header;
int Limit;
};
struct _POWER_SEQUENCE {
DWORD SequenceD1;
DWORD SequenceD2;
DWORD SequenceD3;
};
enum _SECURITY_IMPERSONATION_LEVEL {
SecurityAnonymous,
SecurityIdentification,
SecurityImpersonation,
SecurityDelegation,
};
struct _SECURITY_SUBJECT_CONTEXT {
void* ClientToken;
enum _SECURITY_IMPERSONATION_LEVEL ImpersonationLevel;
void* PrimaryToken;
void* ProcessAuditId;
};
struct __unnamed {
DWORD Length;
DWORD Alignment;
_LARGE_INTEGER MinimumAddress;
_LARGE_INTEGER MaximumAddress;
};
struct __unnamed {
DWORD MinimumVector;
DWORD MaximumVector;
};
struct __unnamed {
DWORD MinimumChannel;
DWORD MaximumChannel;
};
struct __unnamed {
DWORD Data[3];
};
struct __unnamed {
DWORD Length;
DWORD MinBusNumber;
DWORD MaxBusNumber;
DWORD Reserved;
};
struct __unnamed {
DWORD Priority;
DWORD Reserved1;
DWORD Reserved2;
};
struct __unnamed {
__unnamed Port;
__unnamed Memory;
__unnamed Interrupt;
__unnamed Dma;
__unnamed Generic;
__unnamed DevicePrivate;
__unnamed BusNumber;
__unnamed ConfigData;
};
struct _IO_RESOURCE_DESCRIPTOR {
DWORD Option;
DWORD Type;
DWORD ShareDisposition;
DWORD Spare1;
DWORD Flags;
DWORD Spare2;
__unnamed u;
};
struct _LUID_AND_ATTRIBUTES {
_LUID Luid;
DWORD Attributes;
};
struct _INITIAL_PRIVILEGE_SET {
DWORD PrivilegeCount;
DWORD Control;
_LUID_AND_ATTRIBUTES Privilege[3];
};
struct _SECURITY_QUALITY_OF_SERVICE {
DWORD Length;
enum _SECURITY_IMPERSONATION_LEVEL ImpersonationLevel;
DWORD ContextTrackingMode;
DWORD EffectiveOnly;
};
struct _FILE_STANDARD_INFORMATION {
_LARGE_INTEGER AllocationSize;
_LARGE_INTEGER EndOfFile;
DWORD NumberOfLinks;
DWORD DeletePending;
DWORD Directory;
};
struct _CM_PARTIAL_RESOURCE_LIST {
DWORD Version;
DWORD Revision;
DWORD Count;
_CM_PARTIAL_RESOURCE_DESCRIPTOR PartialDescriptors[1];
};
struct _CM_FULL_RESOURCE_DESCRIPTOR {
enum _INTERFACE_TYPE InterfaceType;
DWORD BusNumber;
_CM_PARTIAL_RESOURCE_LIST PartialResourceList;
};
struct _OWNER_ENTRY {
DWORD OwnerThread;
int OwnerCount;
DWORD TableSize;
};
struct _CM_PARTIAL_RESOURCE_DESCRIPTOR {
DWORD Type;
DWORD ShareDisposition;
DWORD Flags;
__unnamed u;
};
struct _CM_PARTIAL_RESOURCE_LIST {
DWORD Version;
DWORD Revision;
DWORD Count;
_CM_PARTIAL_RESOURCE_DESCRIPTOR PartialDescriptors[1];
};
struct _LUID_AND_ATTRIBUTES {
_LUID Luid;
DWORD Attributes;
};
struct __unnamed {
_LARGE_INTEGER Start;
DWORD Length;
};
struct __unnamed {
DWORD Level;
DWORD Vector;
DWORD Affinity;
};
struct __unnamed {
DWORD Channel;
DWORD Port;
DWORD Reserved1;
};
struct __unnamed {
DWORD Start;
DWORD Length;
DWORD Reserved;
};
struct __unnamed {
DWORD DataSize;
DWORD Reserved1;
DWORD Reserved2;
};
struct __unnamed {
__unnamed Generic;
__unnamed Port;
__unnamed Interrupt;
__unnamed Memory;
__unnamed Dma;
__unnamed DevicePrivate;
__unnamed BusNumber;
__unnamed DeviceSpecificData;
};
struct _CM_PARTIAL_RESOURCE_DESCRIPTOR {
DWORD Type;
DWORD ShareDisposition;
DWORD Flags;
__unnamed u;
};
struct _PRIVILEGE_SET {
DWORD PrivilegeCount;
DWORD Control;
_LUID_AND_ATTRIBUTES Privilege[1];
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -