PARTITION_INFORMATION 结构 (ntdddisk.h)

PARTITION_INFORMATION 结构包含具有传统 AT 样式主启动记录 (MBR) 的分区的分区信息。

语法

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

成员

StartingOffset

指定分区开始位置的驱动器上的偏移量(以字节为单位)。

PartitionLength

指定分区的长度(以字节为单位)。

HiddenSectors

指定隐藏扇区的数目。

PartitionNumber

指定分区号。

PartitionType

可能的值如下:

分区类型 含义
PARTITION_ENTRY_UNUSED 未使用的条目
PARTITION_FAT_12 指定包含 12 位 FAT 条目的分区
PARTITION_XENIX_1 指定 XENIX 类型 1 分区
PARTITION_XENIX_2 指定 XENIX 类型 2 分区
PARTITION_FAT_16 指定包含 16 位 FAT 条目的分区。
PARTITION_EXTENDED 指定 MS-DOS V4 扩展分区
PARTITION_HUGE 指定 MS-DOS V4 大型分区
PARTITION_IFS 指定 IFS 分区
PARTITION_FAT32 指定 FAT32 分区
PARTITION_FAT32_XINT13 Windows 95/98:指定使用扩展 INT 13 服务的分区
PARTITION_XINT13_EXTENDED Windows 95/98:与 PARTITION_EXTENDED 相同,但使用扩展的 INT 13 服务
PARTITION_PREP 指定 PowerPC 参考平台分区
PARTITION_LDM 指定逻辑磁盘管理器分区
PARTITION_UNIX 指定 UNIX 分区
PARTITION_NTFT 指定 NTFT 分区。 此值 (结合使用,即按位 ORed) 此表中的其他值

BootIndicator

为 TRUE 时,指示此分区是此设备的可启动 (活动) 分区。 如果 为 FALSE,则此分区不可启动。 此成员是根据 IoReadPartitionTable 返回的分区列表条目启动指示器设置的。

RecognizedPartition

为 TRUE 时,指示系统已识别分区的类型。 如果 为 FALSE,则系统无法识别分区的类型。

RewritePartition

为 TRUE 时,指示分区信息已更改。 如果 为 FALSE,则分区信息未更改。 当分区因IOCTL_DISK_SET_DRIVE_LAYOUT IOCTL 而更改时,此成员的值为 TRUE。 这会通知系统需要重写分区信息。

注解

PARTITION_INFORMATION 中的分区条目数据构成旧例程 IoReadPartitionTableDRIVE_LAYOUT_INFORMATION 结构中报告的驱动器布局信息的一部分。 DRIVE_LAYOUT_INFORMATION包含其 PartitionEntry 成员指向的PARTITION_INFORMATION结构的数组。 每个分区条目都包含驱动器上分区的信息。 PARTITION_INFORMATION还与旧例程 IoSetPartitionInformation 一起使用,以更改磁盘上记录的分区的属性,例如其类型。

磁盘驱动程序现在应使用 结构DRIVE_LAYOUT_INFORMATION_EXPARTITION_INFORMATION_EX 以及 例程 IoReadPartitionTableExIoSetPartitionInformationEx 来读取和更改磁盘上的分区信息。

要求

要求
Header ntdddisk.h (包括 Ntdddisk.h)

另请参阅

DRIVE_LAYOUT_INFORMATION

DRIVE_LAYOUT_INFORMATION_EX

IoReadPartitionTable

IoReadPartitionTableEx

IoSetPartitionInformation

IoSetPartitionInformationEx

PARTITION_INFORMATION_EX