亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? winioctl.h

?? 以C語言和Java語言、嵌入式開發、算法實現為主
?? H
?? 第 1 頁 / 共 5 頁
字號:
//
//     This macro is used to determine to which partitions drive letters
//     should be assigned.
//
// Arguments:
//
//     PartitionType - Supplies the type of the partition being examined.
//
// Return Value:
//
//     The return value is TRUE if the partition type is recognized,
//     otherwise FALSE is returned.
//
//--

#define IsRecognizedPartition( PartitionType ) (    \
     ((PartitionType & PARTITION_NTFT) && ((PartitionType & ~0xC0) == PARTITION_FAT_12)) ||  \
     ((PartitionType & PARTITION_NTFT) && ((PartitionType & ~0xC0) == PARTITION_IFS)) ||  \
     ((PartitionType & PARTITION_NTFT) && ((PartitionType & ~0xC0) == PARTITION_HUGE)) ||  \
     ((PartitionType & PARTITION_NTFT) && ((PartitionType & ~0xC0) == PARTITION_FAT32)) ||  \
     ((PartitionType & PARTITION_NTFT) && ((PartitionType & ~0xC0) == PARTITION_FAT32_XINT13)) ||  \
     ((PartitionType & PARTITION_NTFT) && ((PartitionType & ~0xC0) == PARTITION_XINT13)) ||  \
     ((PartitionType) == PARTITION_FAT_12)          ||  \
     ((PartitionType) == PARTITION_FAT_16)          ||  \
     ((PartitionType) == PARTITION_IFS)             ||  \
     ((PartitionType) == PARTITION_HUGE)            ||  \
     ((PartitionType) == PARTITION_FAT32)           ||  \
     ((PartitionType) == PARTITION_FAT32_XINT13)    ||  \
     ((PartitionType) == PARTITION_XINT13) )

//++
//
// BOOLEAN
// IsContainerPartition(
//     IN DWORD PartitionType
//     )
//
// Routine Description:
//
//     This macro is used to determine to which partition types are actually
//     containers for other partitions (ie, extended partitions).
//
// Arguments:
//
//     PartitionType - Supplies the type of the partition being examined.
//
// Return Value:
//
//     The return value is TRUE if the partition type is a container,
//     otherwise FALSE is returned.
//
//--

#define IsContainerPartition( PartitionType ) \
    ((PartitionType == PARTITION_EXTENDED) || (PartitionType == PARTITION_XINT13_EXTENDED))

//++
//
// BOOLEAN
// IsFTPartition(
//     IN DWORD PartitionType
//     )
//
// Routine Description:
//
//     This macro is used to determine if the given partition is an FT
//     partition.
//
// Arguments:
//
//     PartitionType - Supplies the type of the partition being examined.
//
// Return Value:
//
//     The return value is TRUE if the partition type is an FT partition,
//     otherwise FALSE is returned.
//
//--

#define IsFTPartition( PartitionType ) \
    (((PartitionType)&PARTITION_NTFT) && IsRecognizedPartition(PartitionType))

//
// Define the media types supported by the driver.
//

typedef enum _MEDIA_TYPE {
    Unknown,                // Format is unknown
    F5_1Pt2_512,            // 5.25", 1.2MB,  512 bytes/sector
    F3_1Pt44_512,           // 3.5",  1.44MB, 512 bytes/sector
    F3_2Pt88_512,           // 3.5",  2.88MB, 512 bytes/sector
    F3_20Pt8_512,           // 3.5",  20.8MB, 512 bytes/sector
    F3_720_512,             // 3.5",  720KB,  512 bytes/sector
    F5_360_512,             // 5.25", 360KB,  512 bytes/sector
    F5_320_512,             // 5.25", 320KB,  512 bytes/sector
    F5_320_1024,            // 5.25", 320KB,  1024 bytes/sector
    F5_180_512,             // 5.25", 180KB,  512 bytes/sector
    F5_160_512,             // 5.25", 160KB,  512 bytes/sector
    RemovableMedia,         // Removable media other than floppy
    FixedMedia,             // Fixed hard disk media
    F3_120M_512,            // 3.5", 120M Floppy
    F3_640_512,             // 3.5" ,  640KB,  512 bytes/sector
    F5_640_512,             // 5.25",  640KB,  512 bytes/sector
    F5_720_512,             // 5.25",  720KB,  512 bytes/sector
    F3_1Pt2_512,            // 3.5" ,  1.2Mb,  512 bytes/sector
    F3_1Pt23_1024,          // 3.5" ,  1.23Mb, 1024 bytes/sector
    F5_1Pt23_1024,          // 5.25",  1.23MB, 1024 bytes/sector
    F3_128Mb_512,           // 3.5" MO 128Mb   512 bytes/sector
    F3_230Mb_512,           // 3.5" MO 230Mb   512 bytes/sector
    F8_256_128,             // 8",     256KB,  128 bytes/sector
    F3_200Mb_512,           // 3.5",   200M Floppy (HiFD)
    F3_240M_512,            // 3.5",   240Mb Floppy (HiFD)
    F3_32M_512              // 3.5",   32Mb Floppy
} MEDIA_TYPE, *PMEDIA_TYPE;

//
// Define the input buffer structure for the driver, when
// it is called with IOCTL_DISK_FORMAT_TRACKS.
//

typedef struct _FORMAT_PARAMETERS {
   MEDIA_TYPE MediaType;
   DWORD StartCylinderNumber;
   DWORD EndCylinderNumber;
   DWORD StartHeadNumber;
   DWORD EndHeadNumber;
} FORMAT_PARAMETERS, *PFORMAT_PARAMETERS;

//
// Define the BAD_TRACK_NUMBER type. An array of elements of this type is
// returned by the driver on IOCTL_DISK_FORMAT_TRACKS requests, to indicate
// what tracks were bad during formatting. The length of that array is
// reported in the `Information' field of the I/O Status Block.
//

typedef WORD   BAD_TRACK_NUMBER;
typedef WORD   *PBAD_TRACK_NUMBER;

//
// Define the input buffer structure for the driver, when
// it is called with IOCTL_DISK_FORMAT_TRACKS_EX.
//

typedef struct _FORMAT_EX_PARAMETERS {
   MEDIA_TYPE MediaType;
   DWORD StartCylinderNumber;
   DWORD EndCylinderNumber;
   DWORD StartHeadNumber;
   DWORD EndHeadNumber;
   WORD   FormatGapLength;
   WORD   SectorsPerTrack;
   WORD   SectorNumber[1];
} FORMAT_EX_PARAMETERS, *PFORMAT_EX_PARAMETERS;

//
// The following structure is returned on an IOCTL_DISK_GET_DRIVE_GEOMETRY
// request and an array of them is returned on an IOCTL_DISK_GET_MEDIA_TYPES
// request.
//

typedef struct _DISK_GEOMETRY {
    LARGE_INTEGER Cylinders;
    MEDIA_TYPE MediaType;
    DWORD TracksPerCylinder;
    DWORD SectorsPerTrack;
    DWORD BytesPerSector;
} DISK_GEOMETRY, *PDISK_GEOMETRY;



//
// This wmi guid returns a DISK_GEOMETRY structure
//
#define WMI_DISK_GEOMETRY_GUID         { 0x25007f51, 0x57c2, 0x11d1, { 0xa5, 0x28, 0x0, 0xa0, 0xc9, 0x6, 0x29, 0x10 } }



//
// The following structure is returned on an IOCTL_DISK_GET_PARTITION_INFO
// and an IOCTL_DISK_GET_DRIVE_LAYOUT request.  It is also used in a request
// to change the drive layout, IOCTL_DISK_SET_DRIVE_LAYOUT.
//

typedef struct _PARTITION_INFORMATION {
    LARGE_INTEGER StartingOffset;
    LARGE_INTEGER PartitionLength;
    DWORD HiddenSectors;
    DWORD PartitionNumber;
    BYTE  PartitionType;
    BOOLEAN BootIndicator;
    BOOLEAN RecognizedPartition;
    BOOLEAN RewritePartition;
} PARTITION_INFORMATION, *PPARTITION_INFORMATION;

//
// The following structure is used to change the partition type of a
// specified disk partition using an IOCTL_DISK_SET_PARTITION_INFO
// request.
//

typedef struct _SET_PARTITION_INFORMATION {
    BYTE  PartitionType;
} SET_PARTITION_INFORMATION, *PSET_PARTITION_INFORMATION;

//
// The following structures is returned on an IOCTL_DISK_GET_DRIVE_LAYOUT
// request and given as input to an IOCTL_DISK_SET_DRIVE_LAYOUT request.
//

typedef struct _DRIVE_LAYOUT_INFORMATION {
    DWORD PartitionCount;
    DWORD Signature;
    PARTITION_INFORMATION PartitionEntry[1];
} DRIVE_LAYOUT_INFORMATION, *PDRIVE_LAYOUT_INFORMATION;

//
// The following structure is passed in on an IOCTL_DISK_VERIFY request.
// The offset and length parameters are both given in bytes.
//

typedef struct _VERIFY_INFORMATION {
    LARGE_INTEGER StartingOffset;
    DWORD Length;
} VERIFY_INFORMATION, *PVERIFY_INFORMATION;

//
// The following structure is passed in on an IOCTL_DISK_REASSIGN_BLOCKS
// request.
//

typedef struct _REASSIGN_BLOCKS {
    WORD   Reserved;
    WORD   Count;
    DWORD BlockNumber[1];
} REASSIGN_BLOCKS, *PREASSIGN_BLOCKS;


#if(_WIN32_WINNT >= 0x500)

//
// Support for GUID Partition Table (GPT) disks.
//

//
// There are currently two ways a disk can be partitioned. With a traditional
// AT-style master boot record (PARTITION_STYLE_MBR) and with a new, GPT
// partition table (PARTITION_STYLE_GPT). RAW is for an unrecognizable
// partition style. There are a very limited number of things you can
// do with a RAW partititon.
//

typedef enum _PARTITION_STYLE {
    PARTITION_STYLE_MBR,
    PARTITION_STYLE_GPT,
    PARTITION_STYLE_RAW
} PARTITION_STYLE;


//
// The following structure defines information in a GPT partition that is
// not common to both GPT and MBR partitions.
//

typedef struct _PARTITION_INFORMATION_GPT {
    GUID PartitionType;                 // Partition type. See table 16-3.
    GUID PartitionId;                   // Unique GUID for this partition.
    DWORD64 Attributes;                 // See table 16-4.
    WCHAR Name [36];                    // Partition Name in Unicode.
} PARTITION_INFORMATION_GPT, *PPARTITION_INFORMATION_GPT;

//
//  The following are GPT partition attributes applicable for any
//  partition type. These attributes are not OS-specific
//

#define GPT_ATTRIBUTE_PLATFORM_REQUIRED             (0x0000000000000001)

//
// The following are GPT partition attributes applicable when the
// PartitionType is PARTITION_BASIC_DATA_GUID.
//

#define GPT_BASIC_DATA_ATTRIBUTE_NO_DRIVE_LETTER    (0x8000000000000000)
#define GPT_BASIC_DATA_ATTRIBUTE_HIDDEN             (0x4000000000000000)
#define GPT_BASIC_DATA_ATTRIBUTE_READ_ONLY          (0x1000000000000000)

//
// The following structure defines information in an MBR partition that is not
// common to both GPT and MBR partitions.
//

typedef struct _PARTITION_INFORMATION_MBR {
    BYTE  PartitionType;
    BOOLEAN BootIndicator;
    BOOLEAN RecognizedPartition;
    DWORD HiddenSectors;
} PARTITION_INFORMATION_MBR, *PPARTITION_INFORMATION_MBR;


//
// The structure SET_PARTITION_INFO_EX is used with the ioctl
// IOCTL_SET_PARTITION_INFO_EX to set information about a specific
// partition. Note that for MBR partitions, you can only set the partition
// signature, whereas GPT partitions allow setting of all fields that
// you can get.
//

typedef SET_PARTITION_INFORMATION SET_PARTITION_INFORMATION_MBR;
typedef PARTITION_INFORMATION_GPT SET_PARTITION_INFORMATION_GPT;


typedef struct _SET_PARTITION_INFORMATION_EX {
    PARTITION_STYLE PartitionStyle;
    union {
        SET_PARTITION_INFORMATION_MBR Mbr;
        SET_PARTITION_INFORMATION_GPT Gpt;
    };
} SET_PARTITION_INFORMATION_EX, *PSET_PARTITION_INFORMATION_EX;


//
// The structure CREATE_DISK_GPT with the ioctl IOCTL_DISK_CREATE_DISK
// to initialize an virgin disk with an empty GPT partition table.
//

typedef struct _CREATE_DISK_GPT {
    GUID DiskId;                    // Unique disk id for the disk.
    DWORD MaxPartitionCount;        // Maximim number of partitions allowable.
} CREATE_DISK_GPT, *PCREATE_DISK_GPT;

//
// The structure CREATE_DISK_MBR with the ioctl IOCTL_DISK_CREATE_DISK
// to initialize an virgin disk with an empty MBR partition table.
//

typedef struct _CREATE_DISK_MBR {
    DWORD Signature;
} CREATE_DISK_MBR, *PCREATE_DISK_MBR;


typedef struct _CREATE_DISK {
    PARTITION_STYLE PartitionStyle;
    union {
        CREATE_DISK_MBR Mbr;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲国产激情av| 国产日产亚洲精品系列| 国产iv一区二区三区| 国产在线播精品第三| 国内外成人在线视频| 免费人成精品欧美精品 | 日韩一区二区免费高清| 欧美日韩亚洲高清一区二区| 欧美日韩中文字幕一区二区| 欧美一卡2卡3卡4卡| 精品国产sm最大网站免费看| 国产欧美一区二区精品性色| 中文字幕一区二区在线播放| 一区二区三区在线高清| 亚洲va韩国va欧美va精品| 麻豆精品在线看| 国产成人在线色| 色哟哟国产精品免费观看| 精品视频一区二区不卡| 欧美一区二区在线观看| 中文字幕av一区二区三区| 亚洲特黄一级片| 日本三级亚洲精品| 国产99久久精品| 欧美亚一区二区| 久久五月婷婷丁香社区| 亚洲免费观看视频| 日本va欧美va欧美va精品| 国产麻豆成人精品| 色综合天天综合在线视频| 欧美人xxxx| 亚洲国产精品精华液2区45| 亚洲一二三级电影| 国产成人福利片| 欧美精品乱人伦久久久久久| 久久久精品综合| 亚洲一区二区欧美| 国产精品一区二区黑丝| 欧美午夜精品免费| 亚洲国产精品ⅴa在线观看| 亚洲777理论| 99国产精品国产精品毛片| 91精品国产丝袜白色高跟鞋| 亚洲视频网在线直播| 韩国欧美国产一区| 欧美三级中文字| 亚洲一区欧美一区| 成人久久视频在线观看| 欧美一级专区免费大片| 一区二区三区不卡在线观看| 国产精品综合一区二区三区| 欧美精品在线观看播放| 亚洲女人的天堂| 国产精品中文字幕欧美| 日韩欧美成人一区二区| 天堂在线亚洲视频| 色综合久久久久综合99| 日本一区二区三区在线观看| 久久99精品国产麻豆婷婷洗澡| 欧美日韩中文精品| 亚洲成人黄色影院| 91成人免费在线视频| 亚洲欧洲99久久| 96av麻豆蜜桃一区二区| 中文欧美字幕免费| 粉嫩久久99精品久久久久久夜| 欧美tk—视频vk| 久久99国产精品久久| 欧美一区二区三区四区视频| 丝袜美腿高跟呻吟高潮一区| 欧美三级中文字| 亚洲成人手机在线| 在线91免费看| 久久99日本精品| 精品福利一二区| 国产成人在线看| 国产精品久久久久天堂| 成人av在线电影| 最新久久zyz资源站| 96av麻豆蜜桃一区二区| 亚洲一区二区三区不卡国产欧美| 色婷婷久久久久swag精品| 尤物视频一区二区| 69堂成人精品免费视频| 久久成人av少妇免费| 久久免费精品国产久精品久久久久| 国产在线不卡一卡二卡三卡四卡| 国产欧美一区二区精品婷婷| 不卡的av网站| 亚洲成人三级小说| 精品国产一区二区三区av性色| 国产乱子伦一区二区三区国色天香| 久久久久久久久久久99999| 国产成人自拍在线| 亚洲精品第1页| 4438x亚洲最大成人网| 国产老女人精品毛片久久| 国产精品国产精品国产专区不片| 在线看国产一区二区| 日本成人中文字幕在线视频| 久久久精品免费网站| eeuss鲁片一区二区三区在线看| 一区二区三区在线观看视频| 日韩精品在线看片z| 成人高清视频在线| 日韩国产欧美在线视频| 中文字幕av一区二区三区免费看 | 日韩国产在线观看一区| 久久理论电影网| 欧美亚一区二区| 国产成人综合亚洲网站| 日韩精品电影在线| 国产精品欧美久久久久无广告| 欧美日韩小视频| 福利一区福利二区| 日本在线不卡视频| 亚洲同性同志一二三专区| 日韩免费观看高清完整版在线观看| 97超碰欧美中文字幕| 国产在线一区二区| 午夜久久久久久久久久一区二区| 欧美国产日本视频| 日韩久久久久久| 精品视频色一区| 91精品办公室少妇高潮对白| 国产精品一区专区| 秋霞电影一区二区| 亚洲一区二区视频| 日韩一区在线看| 国产亚洲一区二区三区| 日韩三级免费观看| 6080国产精品一区二区| 91成人国产精品| 91社区在线播放| 懂色av中文一区二区三区| 麻豆精品蜜桃视频网站| 亚洲自拍欧美精品| 一区二区在线观看av| 中文字幕一区二区三区不卡| 久久九九全国免费| 久久精品男人的天堂| 国产视频在线观看一区二区三区| 欧美一区二区二区| 欧美一区二区三区四区在线观看| 欧美日韩激情一区二区| 欧美日韩精品三区| 欧美日韩国产高清一区二区三区| 色噜噜狠狠色综合中国| 色综合天天性综合| 91麻豆高清视频| 欧美这里有精品| 欧美怡红院视频| 欧美熟乱第一页| 91精品国产综合久久蜜臀| 欧美片网站yy| 日韩精品一区二区三区视频| 精品国产免费一区二区三区四区| 欧美大黄免费观看| 久久免费视频一区| 中文天堂在线一区| 依依成人综合视频| 午夜激情久久久| 免播放器亚洲一区| 国产美女娇喘av呻吟久久| 国产成人精品影院| 一本大道久久精品懂色aⅴ| 欧美图片一区二区三区| 在线播放91灌醉迷j高跟美女| 日韩欧美国产电影| 久久精品夜夜夜夜久久| 成人欧美一区二区三区在线播放| 亚洲女同一区二区| 麻豆成人免费电影| www.久久久久久久久| 欧美午夜电影在线播放| 精品久久久久香蕉网| 欧美韩国日本不卡| 天天做天天摸天天爽国产一区| 免费亚洲电影在线| av影院午夜一区| 在线91免费看| 国产精品成人免费精品自在线观看| 一区二区在线观看免费| 麻豆国产一区二区| 91在线精品一区二区| 欧美日韩不卡在线| 中文字幕免费不卡| 肉肉av福利一精品导航| www.在线成人| 欧美一区二区女人| 亚洲天堂av老司机| 国内成人精品2018免费看| 91成人在线精品| 欧美激情一区二区三区| 美国三级日本三级久久99| 91麻豆视频网站| 欧美精品一区视频| 日韩成人av影视| 成人精品gif动图一区| 精品国精品自拍自在线|