PARTITION_INFORMATION_GPT 结构 (winioctl.h)

包含 GUID 分区表 (GPT) 分区信息。

语法

typedef struct _PARTITION_INFORMATION_GPT {
  GUID    PartitionType;
  GUID    PartitionId;
  DWORD64 Attributes;
  WCHAR   Name[36];
} PARTITION_INFORMATION_GPT, *PPARTITION_INFORMATION_GPT;

成员

PartitionType

标识分区类型的 GUID

EFI 规范支持的每个分区类型都由其自己的 GUID 标识,该 GUID 由分区的开发人员发布。

此成员可以是以下值之一。

含义
PARTITION_BASIC_DATA_GUID
ebd0a0a2-b9e5-4433-87c0-68b6b72699c7
由 Windows 创建和识别的数据分区类型。

只有此类型的分区可以分配驱动器号、接收卷 GUID 路径、主机装载的文件夹 (也称为卷装入点) ,并通过调用 FindFirstVolumeFindNextVolume 进行枚举。

此值只能为基本磁盘设置,但有一个例外。 如果为随后转换为动态磁盘的基本磁盘上的分区设置了 PARTITION_BASIC_DATA_GUIDGPT_ATTRIBUTE_PLATFORM_REQUIRED ,则分区仍将是基本分区,即使该磁盘的其余部分是动态磁盘。 这是因为分区被视为 GPT 磁盘上的 OEM 分区。

PARTITION_ENTRY_UNUSED_GUID
00000000-0000-0000-0000-000000000000
没有分区。

可以为基本磁盘和动态磁盘设置此值。

PARTITION_SYSTEM_GUID
c12a7328-f81f-11d2-ba4b-00a0c93ec93b
该分区是 EFI 系统分区。

可以为基本磁盘和动态磁盘设置此值。

PARTITION_MSFT_RESERVED_GUID
e3c9e316-0b5c-4db8-817d-f92df00215ae
该分区是 Microsoft 保留分区。

可以为基本磁盘和动态磁盘设置此值。

PARTITION_LDM_METADATA_GUID
5808c8aa-7e8f-42e0-85d2-e1e90434cfb3
该分区是动态磁盘上 (LDM) 元数据分区的逻辑磁盘管理器。

只能为动态磁盘设置此值。

PARTITION_LDM_DATA_GUID
af9b60a0-1431-4f62-bc68-3311714a69ad
该分区是动态磁盘上的 LDM 数据分区。

只能为动态磁盘设置此值。

PARTITION_MSFT_RECOVERY_GUID
de94bba4-06d1-4d40-a16a-bfd50179d6ac
该分区是 Microsoft 恢复分区。

可以为基本磁盘和动态磁盘设置此值。

PartitionId

分区的 GUID。

Attributes

可扩展固件接口 (EFI) 分区的属性。

此成员可以是以下一个或多个值。

含义
GPT_ATTRIBUTE_PLATFORM_REQUIRED
0x0000000000000001
如果设置了此属性,则计算机需要分区才能正常运行。

例如,必须为 OEM 分区设置此属性。 请注意,如果设置了此属性,则可以使用 DiskPart.exe 实用工具执行分区操作,例如删除分区。 但是,由于分区不是卷,因此无法使用 DiskPart.exe 实用工具对分区执行卷操作。

可以为基本磁盘和动态磁盘设置此属性。 如果它是为基本磁盘上的分区设置的,并且磁盘转换为动态磁盘,则分区仍然是基本分区,即使磁盘的其余部分是动态磁盘。 这是因为分区被视为 GPT 磁盘上的 OEM 分区。

GPT_BASIC_DATA_ATTRIBUTE_NO_DRIVE_LETTER
0x8000000000000000
如果设置了此属性,则当磁盘移动到另一台计算机或计算机首次看到磁盘时,分区默认情况下不会收到驱动器号。

此属性在存储区域网络 (SAN) 环境中很有用。

尽管其名称为 ,但可以为基本磁盘和动态磁盘设置此属性。

GPT_BASIC_DATA_ATTRIBUTE_HIDDEN
0x4000000000000000
如果设置了此属性,装载管理器不会检测到分区。

因此,分区不接收驱动器号,不接收卷 GUID 路径,不托管装载的文件夹 (也称为卷装入点) ,并且不通过调用 FindFirstVolumeFindNextVolume 枚举。 这可确保磁盘碎片整理程序等应用程序不会访问分区。 卷影复制服务 (VSS) 使用此属性。

尽管其名称为 ,但可以为基本磁盘和动态磁盘设置此属性。

GPT_BASIC_DATA_ATTRIBUTE_SHADOW_COPY
0x2000000000000000
如果设置了此属性,则分区是另一个分区的卷影副本。

VSS 使用此属性。 此属性指示文件系统筛选器基于驱动程序的软件 (,例如防病毒程序) 以避免附加到卷。

应用程序可以使用 属性将卷影复制卷与生产卷区分开来。 例如,执行快速恢复的应用程序会中断卷影复制 LUN,并清除只读和隐藏属性以及此属性。 此属性在创建卷影副本时设置,并在卷影副本损坏时清除。

尽管其名称为 ,但可以为基本磁盘和动态磁盘设置此属性。

Windows Server 2003: 在具有 SP1 的 Windows Server 2003 之前,不支持此属性。

GPT_BASIC_DATA_ATTRIBUTE_READ_ONLY
0x1000000000000000
如果设置了此属性,则分区为只读。

写入分区将失败。 IOCTL_DISK_IS_WRITABLE 将失败并 显示ERROR_WRITE_PROTECT Win32 错误代码,这会导致文件系统装载为只读(如果存在文件系统)。

VSS 使用此属性。

不要为动态磁盘设置此属性。 设置它可能会导致 I/O 错误,并阻止文件系统正确装载。

Name[36]

描述分区的宽字符字符串。

注解

对于用于启动使用扩展固件接口 (EFI) 固件的计算机的磁盘,需要 GPT 分区格式。 GPT 数据磁盘可以驻留在基于 x86、x64 和 Itanium 的体系结构上。

从具有 SP1 的 Windows Server 2003 开始,GPT 在所有 Windows 平台上都受支持,而不仅仅是使用 EFI 的平台。

要求

   
最低受支持的客户端 Windows XP [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
标头 winioctl.h (包括 Windows.h)

另请参阅

文件系统识别

IOCTL_DISK_GET_PARTITION_INFO_EX

IOCTL_DISK_SET_PARTITION_INFO_EX

PARTITION_INFORMATION_EX