(vds.h) CREATE_PARTITION_PARAMETERS 结构

[从 Windows 8 和 Windows Server 2012 开始,虚拟磁盘服务 COM 接口由 Windows 存储管理 API 取代。]

定义分区样式的分区参数。

语法

typedef struct _CREATE_PARTITION_PARAMETERS {
  VDS_PARTITION_STYLE style;
  union {
    struct {
      BYTE    partitionType;
      BOOLEAN bootIndicator;
    } MbrPartInfo;
    struct {
      GUID      partitionType;
      GUID      partitionId;
      ULONGLONG attributes;
      WCHAR     name[36];
    } GptPartInfo;
  };
} CREATE_PARTITION_PARAMETERS;

成员

style

MbrPartInfo

主启动记录 (MBR) 磁盘的参数。 在样式为VDS_PST_MBR时使用。

MbrPartInfo.partitionType

指示系统定义的 MBR 分区类型。 可能的值如下:

含义
PARTITION_ENTRY_UNUSED
0x00
未使用的条目。
PARTITION_FAT_12
0x01
指定包含 12 位 FAT 条目的分区。
PARTITION_XENIX_1
0x02
指定 XENIX 类型 1 分区。
PARTITION_XENIX_2
0x03
指定 XENIX 类型 2 分区。
PARTITION_FAT_16
0x04
指定包含 16 位 FAT 条目的分区。
PARTITION_EXTENDED
0x05
指定 MS-DOS V4 扩展分区。
PARTITION_HUGE
0x06
指定 MS-DOS V4 大型分区。 此值指示分区上没有 Microsoft 文件系统。 创建逻辑卷时使用此值。
PARTITION_IFS
0x07
指定 NTFS 或 ExFAT 分区。
PARTITION_OS2BOOTMGR
0x0A
指定 OS/2 启动管理器、OPUS 或一致交换分区。
PARTITION_FAT32
0x0B
指定 FAT32 分区。
PARTITION_FAT32_XINT13
0x0C
不支持此值。
PARTITION_XINT13
0x0E
不支持此值。
PARTITION_XINT13_EXTENDED
0x0F
不支持此值。
PARTITION_PREP
0x41
指定 PowerPC 参考平台分区。
PARTITION_LDM
0x42
指定逻辑磁盘管理器分区。
PARTITION_UNIX
0x63
指定 UNIX 分区。
PARTITION_NTFT
0x80
指定 NTFT 分区。 此值用于 (按位逻辑 ORed) 此表中的其他值。

MbrPartInfo.bootIndicator

如果 为 TRUE,则分区处于活动状态并可以启动;否则分区不能用于启动系统。

GptPartInfo

GPT) 磁盘 (GUID 分区表的参数。 如果样式为VDS_PST_GPT,则使用。

GptPartInfo.partitionType

分区类型的 GUID。

含义
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_BASIC_DATA_GUID
ebd0a0a2-b9e5-4433-87c0-68b6b72699c7
由 Windows 创建和识别的数据分区类型。

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

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

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 恢复分区。

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

GptPartInfo.partitionId

如果分区的 ID。 如果在创建时设置为 GUID_NULL (0) ,则将生成唯一值。

GptPartInfo.attributes

分区的属性。 该选项可以是如下一个或多个值:

含义
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 错误,并阻止文件系统正确装载。

GptPartInfo.name[36]

以 Null 结尾的 Unicode 字符串,用于指定分区的名称。

注解

IVdsAdvancedDisk::CreatePartition 方法将此结构作为参数传递以指定一组参数。

要求

要求
最低受支持的客户端 Windows Vista [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
标头 vds.h

另请参阅

IVdsAdvancedDisk::CreatePartition

VDS 结构

VDS_PARTITION_STYLE