IVdsAdvancedDisk2::ChangePartitionType 方法 (vds.h)

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

在指定的字节偏移量处更改磁盘上的分区类型。

语法

HRESULT ChangePartitionType(
  [in] ULONGLONG                        ullOffset,
  [in] BOOL                             bForce,
  [in] CHANGE_PARTITION_TYPE_PARAMETERS *para
);

参数

[in] ullOffset

分区从磁盘开头的字节偏移量。 此偏移量必须是分区开始的偏移量。

[in] bForce

指示是否强制更改的布尔值。

[in] para

指向 CHANGE_PARTITION_TYPE_PARAMETERS 结构的指针,该结构包含 ullOffset 参数指定位置的分区将更改为的分区类型。

返回值

此方法可以返回标准 HRESULT 值,例如E_INVALIDARG或E_OUTOFMEMORY,以及 特定于 VDS 的返回值。 它还可以使用 HRESULT_FROM_WIN32 宏返回转换的系统错误代码。 错误可能源自 VDS 本身或正在使用的基础 VDS 提供程序 。 可能的返回值包括以下内容。

返回代码/值 说明
S_OK
已成功更改分区类型。
VDS_E_DEVICE_IN_USE
0x80042413L
分区正在使用中。
VDS_E_INTERNAL_ERROR
0x80042448L
发生内部错误。 有关更多详细信息,请查看事件日志。
VDS_E_INVALID_PARTITION_TYPE
0x80042565L
指定的分区类型对于此操作无效。
VDS_E_NOT_SUPPORTED
0x80042400L
不支持更改动态磁盘上的分区类型。
VDS_E_OBJECT_NOT_FOUND
0x80042405L
分区不存在。
VDS_E_PARTITION_LDM
0x8004258DL
LDM 分区不支持此操作。
VDS_E_PARTITION_MSR
0x8004258CL
MSR 分区不支持此操作。
VDS_E_PARTITION_STYLE_MISMATCH
0x80042571L
指定的分区样式与磁盘的分区样式不匹配。

注解

如果 OEM 分区的格式设置为 FAT 或 FAT32,则分区类型不会更改。 如果使用 NTFS 格式化,分区类型将更改为PARTITION_IFS (0x07) 。 有关分区类型的信息,请参阅 CREATE_PARTITION_PARAMETERS

要求

要求
最低受支持的客户端 Windows Vista [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 [仅限桌面应用]
目标平台 Windows
标头 vds.h
Library Uuid.lib

另请参阅

IVdsAdvancedDisk2