⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ntifs.h

📁 MinGW+MSYS开发必用的api参考
💻 H
📖 第 1 页 / 共 5 页
字号:
    POBJECT_DIRECTORY   GlobalDosDevicesDirectory;    ULONG               ReferenceCount;    ULONG               DriveMap;    UCHAR               DriveType[32];} DEVICE_MAP, *PDEVICE_MAP; #if (VER_PRODUCTBUILD >= 2600)typedef struct _EX_FAST_REF {    _ANONYMOUS_UNION union {        PVOID Object;        ULONG RefCnt : 3;        ULONG Value;    } DUMMYUNIONNAME;} EX_FAST_REF, *PEX_FAST_REF;typedef struct _EX_PUSH_LOCK {    _ANONYMOUS_UNION union {        _ANONYMOUS_STRUCT struct {            ULONG   Waiting     : 1;            ULONG   Exclusive   : 1;            ULONG   Shared      : 30;        } DUMMYSTRUCTNAME;        ULONG   Value;        PVOID   Ptr;    } DUMMYUNIONNAME;} EX_PUSH_LOCK, *PEX_PUSH_LOCK;typedef struct _EX_RUNDOWN_REF {    _ANONYMOUS_UNION union {        ULONG Count;        PVOID Ptr;    } DUMMYUNIONNAME;} EX_RUNDOWN_REF, *PEX_RUNDOWN_REF;#endiftypedef struct _EPROCESS_QUOTA_ENTRY {    ULONG Usage;    ULONG Limit;    ULONG Peak;    ULONG Return;} EPROCESS_QUOTA_ENTRY, *PEPROCESS_QUOTA_ENTRY;typedef struct _EPROCESS_QUOTA_BLOCK {    EPROCESS_QUOTA_ENTRY    QuotaEntry[3];    LIST_ENTRY              QuotaList;    ULONG                   ReferenceCount;    ULONG                   ProcessCount;} EPROCESS_QUOTA_BLOCK, *PEPROCESS_QUOTA_BLOCK;/* * When needing these parameters cast your PIO_STACK_LOCATION to * PEXTENDED_IO_STACK_LOCATION */#if !defined(_ALPHA_)#include <pshpack4.h>#endiftypedef struct _EXTENDED_IO_STACK_LOCATION {    /* Included for padding */    UCHAR MajorFunction;    UCHAR MinorFunction;    UCHAR Flags;    UCHAR Control;    union {       struct {          PIO_SECURITY_CONTEXT              SecurityContext;          ULONG                             Options;          USHORT                            Reserved;          USHORT                            ShareAccess;          PMAILSLOT_CREATE_PARAMETERS       Parameters;       } CreateMailslot;        struct {            PIO_SECURITY_CONTEXT            SecurityContext;            ULONG                           Options;            USHORT                          Reserved;            USHORT                          ShareAccess;            PNAMED_PIPE_CREATE_PARAMETERS   Parameters;        } CreatePipe;        struct {            ULONG                           OutputBufferLength;            ULONG                           InputBufferLength;            ULONG                           FsControlCode;            PVOID                           Type3InputBuffer;        } FileSystemControl;        struct {            PLARGE_INTEGER                  Length;            ULONG                           Key;            LARGE_INTEGER                   ByteOffset;        } LockControl;        struct {            ULONG                           Length;            ULONG                           CompletionFilter;        } NotifyDirectory;        struct {            ULONG                           Length;            PUNICODE_STRING                 FileName;            FILE_INFORMATION_CLASS          FileInformationClass;            ULONG                           FileIndex;        } QueryDirectory;        struct {            ULONG                           Length;            PVOID                           EaList;            ULONG                           EaListLength;            ULONG                           EaIndex;        } QueryEa;        struct {            ULONG                           Length;            PSID                            StartSid;            PFILE_GET_QUOTA_INFORMATION     SidList;            ULONG                           SidListLength;        } QueryQuota;        struct {            ULONG                           Length;        } SetEa;        struct {            ULONG                           Length;        } SetQuota;        struct {            ULONG                           Length;            FS_INFORMATION_CLASS            FsInformationClass;        } SetVolume;    } Parameters;    PDEVICE_OBJECT  DeviceObject;    PFILE_OBJECT  FileObject;    PIO_COMPLETION_ROUTINE  CompletionRoutine;    PVOID  Context;} EXTENDED_IO_STACK_LOCATION, *PEXTENDED_IO_STACK_LOCATION;#if !defined(_ALPHA_)#include <poppack.h>#endiftypedef struct _FILE_ACCESS_INFORMATION {    ACCESS_MASK AccessFlags;} FILE_ACCESS_INFORMATION, *PFILE_ACCESS_INFORMATION;typedef struct _FILE_ALLOCATION_INFORMATION {    LARGE_INTEGER AllocationSize;} FILE_ALLOCATION_INFORMATION, *PFILE_ALLOCATION_INFORMATION;typedef struct _FILE_BOTH_DIR_INFORMATION {    ULONG           NextEntryOffset;    ULONG           FileIndex;    LARGE_INTEGER   CreationTime;    LARGE_INTEGER   LastAccessTime;    LARGE_INTEGER   LastWriteTime;    LARGE_INTEGER   ChangeTime;    LARGE_INTEGER   EndOfFile;    LARGE_INTEGER   AllocationSize;    ULONG           FileAttributes;    ULONG           FileNameLength;    ULONG           EaSize;    CCHAR           ShortNameLength;    WCHAR           ShortName[12];    WCHAR           FileName[1];} FILE_BOTH_DIR_INFORMATION, *PFILE_BOTH_DIR_INFORMATION;typedef struct _FILE_COMPLETION_INFORMATION {    HANDLE  Port;    ULONG   Key;} FILE_COMPLETION_INFORMATION, *PFILE_COMPLETION_INFORMATION;typedef struct _FILE_COMPRESSION_INFORMATION {    LARGE_INTEGER   CompressedFileSize;    USHORT          CompressionFormat;    UCHAR           CompressionUnitShift;    UCHAR           ChunkShift;    UCHAR           ClusterShift;    UCHAR           Reserved[3];} FILE_COMPRESSION_INFORMATION, *PFILE_COMPRESSION_INFORMATION;typedef struct _FILE_COPY_ON_WRITE_INFORMATION {    BOOLEAN ReplaceIfExists;    HANDLE  RootDirectory;    ULONG   FileNameLength;    WCHAR   FileName[1];} FILE_COPY_ON_WRITE_INFORMATION, *PFILE_COPY_ON_WRITE_INFORMATION;typedef struct _FILE_DIRECTORY_INFORMATION {    ULONG           NextEntryOffset;    ULONG           FileIndex;    LARGE_INTEGER   CreationTime;    LARGE_INTEGER   LastAccessTime;    LARGE_INTEGER   LastWriteTime;    LARGE_INTEGER   ChangeTime;    LARGE_INTEGER   EndOfFile;    LARGE_INTEGER   AllocationSize;    ULONG           FileAttributes;    ULONG           FileNameLength;    WCHAR           FileName[1];} FILE_DIRECTORY_INFORMATION, *PFILE_DIRECTORY_INFORMATION;typedef struct _FILE_FULL_DIRECTORY_INFORMATION {		ULONG	          NextEntryOffset;		ULONG	          FileIndex;		LARGE_INTEGER   CreationTime;		LARGE_INTEGER   LastAccessTime;		LARGE_INTEGER   LastWriteTime;		LARGE_INTEGER   ChangeTime;		LARGE_INTEGER   EndOfFile;		LARGE_INTEGER   AllocationSize;		ULONG           FileAttributes;		ULONG           FileNameLength;		ULONG           EaSize;		WCHAR           FileName[0];} FILE_FULL_DIRECTORY_INFORMATION, *PFILE_FULL_DIRECTORY_INFORMATION;typedef struct _FILE_BOTH_DIRECTORY_INFORMATION {		ULONG         NextEntryOffset;		ULONG	        FileIndex;		LARGE_INTEGER CreationTime;		LARGE_INTEGER LastAccessTime;		LARGE_INTEGER LastWriteTime;		LARGE_INTEGER ChangeTime;		LARGE_INTEGER EndOfFile;		LARGE_INTEGER AllocationSize;		ULONG         FileAttributes;		ULONG         FileNameLength;		ULONG         EaSize;		CHAR          ShortNameLength;		WCHAR         ShortName[12];		WCHAR         FileName[0];} FILE_BOTH_DIRECTORY_INFORMATION, *PFILE_BOTH_DIRECTORY_INFORMATION;#if (VER_PRODUCTBUILD >= 2600)typedef struct _FILE_ID_FULL_DIRECTORY_INFORMATION {		ULONG	          NextEntryOffset;		ULONG	          FileIndex;		LARGE_INTEGER   CreationTime;		LARGE_INTEGER   LastAccessTime;		LARGE_INTEGER   LastWriteTime;		LARGE_INTEGER   ChangeTime;		LARGE_INTEGER   EndOfFile;		LARGE_INTEGER   AllocationSize;		ULONG           FileAttributes;		ULONG           FileNameLength;		ULONG           EaSize;		LARGE_INTEGER   FileId;		WCHAR           FileName[0];} FILE_ID_FULL_DIRECTORY_INFORMATION, *PFILE_ID_FULL_DIRECTORY_INFORMATION;typedef struct _FILE_ID_BOTH_DIRECTORY_INFORMATION {		ULONG         NextEntryOffset;		ULONG	        FileIndex;		LARGE_INTEGER CreationTime;		LARGE_INTEGER LastAccessTime;		LARGE_INTEGER LastWriteTime;		LARGE_INTEGER ChangeTime;		LARGE_INTEGER EndOfFile;		LARGE_INTEGER AllocationSize;		ULONG         FileAttributes;		ULONG         FileNameLength;		ULONG         EaSize;		CHAR          ShortNameLength;		WCHAR         ShortName[12];		LARGE_INTEGER FileId;		WCHAR         FileName[0];} FILE_ID_BOTH_DIRECTORY_INFORMATION, *PFILE_ID_BOTH_DIRECTORY_INFORMATION;#endiftypedef struct _FILE_EA_INFORMATION {    ULONG EaSize;} FILE_EA_INFORMATION, *PFILE_EA_INFORMATION;typedef struct _FILE_FS_ATTRIBUTE_INFORMATION {    ULONG   FileSystemAttributes;    ULONG   MaximumComponentNameLength;    ULONG   FileSystemNameLength;    WCHAR   FileSystemName[1];} FILE_FS_ATTRIBUTE_INFORMATION, *PFILE_FS_ATTRIBUTE_INFORMATION;typedef struct _FILE_FS_CONTROL_INFORMATION {    LARGE_INTEGER   FreeSpaceStartFiltering;    LARGE_INTEGER   FreeSpaceThreshold;    LARGE_INTEGER   FreeSpaceStopFiltering;    LARGE_INTEGER   DefaultQuotaThreshold;    LARGE_INTEGER   DefaultQuotaLimit;    ULONG           FileSystemControlFlags;} FILE_FS_CONTROL_INFORMATION, *PFILE_FS_CONTROL_INFORMATION;typedef struct _FILE_FS_FULL_SIZE_INFORMATION {    LARGE_INTEGER   TotalAllocationUnits;    LARGE_INTEGER   CallerAvailableAllocationUnits;    LARGE_INTEGER   ActualAvailableAllocationUnits;    ULONG           SectorsPerAllocationUnit;    ULONG           BytesPerSector;} FILE_FS_FULL_SIZE_INFORMATION, *PFILE_FS_FULL_SIZE_INFORMATION;typedef struct _FILE_FS_LABEL_INFORMATION {    ULONG VolumeLabelLength;    WCHAR VolumeLabel[1];} FILE_FS_LABEL_INFORMATION, *PFILE_FS_LABEL_INFORMATION;#if (VER_PRODUCTBUILD >= 2195)typedef struct _FILE_FS_OBJECT_ID_INFORMATION {    UCHAR ObjectId[16];    UCHAR ExtendedInfo[48];} FILE_FS_OBJECT_ID_INFORMATION, *PFILE_FS_OBJECT_ID_INFORMATION;#endif /* (VER_PRODUCTBUILD >= 2195) */typedef struct _FILE_FS_SIZE_INFORMATION {    LARGE_INTEGER   TotalAllocationUnits;    LARGE_INTEGER   AvailableAllocationUnits;    ULONG           SectorsPerAllocationUnit;    ULONG           BytesPerSector;} FILE_FS_SIZE_INFORMATION, *PFILE_FS_SIZE_INFORMATION;typedef struct _FILE_FS_VOLUME_INFORMATION {    LARGE_INTEGER   VolumeCreationTime;    ULONG           VolumeSerialNumber;    ULONG           VolumeLabelLength;    BOOLEAN         SupportsObjects;    WCHAR           VolumeLabel[1];} FILE_FS_VOLUME_INFORMATION, *PFILE_FS_VOLUME_INFORMATION;typedef struct _FILE_FULL_DIR_INFORMATION {    ULONG           NextEntryOffset;    ULONG           FileIndex;    LARGE_INTEGER   CreationTime;    LARGE_INTEGER   LastAccessTime;    LARGE_INTEGER   LastWriteTime;    LARGE_INTEGER   ChangeTime;    LARGE_INTEGER   EndOfFile;    LARGE_INTEGER   AllocationSize;    ULONG           FileAttributes;    ULONG           FileNameLength;    ULONG           EaSize;    WCHAR           FileName[1];} FILE_FULL_DIR_INFORMATION, *PFILE_FULL_DIR_INFORMATION;typedef struct _FILE_GET_EA_INFORMATION {

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -