Share via


IVdsAdvancedDisk::D eletePartition 方法 (vds.h)

[從 Windows 8 和 Windows Server 2012 開始,虛擬磁碟服務 COM 介面會由 Windows 記憶體管理 API 取代。

從基本磁碟刪除分割區。

語法

HRESULT DeletePartition(
  [in] ULONGLONG ullOffset,
  [in] BOOL      bForce,
  [in] BOOL      bForceProtected
);

參數

[in] ullOffset

分割區位移。

[in] bForce

如果此參數設定為 TRUE,VDS 會無條件地刪除所有分割區, (排除 OEM、ESP 或 MSR) 。 如果設定為 FALSE,則如果分割區正在使用中,作業就會失敗。 如果呼叫鎖定或卸除磁碟區失敗,則會將分割區視為正在使用中。

[in] bForceProtected

如果此參數設定為 TRUE,VDS 會無條件地刪除所有受保護的分割區, (包括 OEM、ESP 和 MSR) 。 如果設定為 FALSE,則如果分割區受到保護,作業就會失敗。

傳回值

這個方法可以傳回標準 HRESULT 值,例如E_INVALIDARG或E_OUTOFMEMORY,以及 VDS 特定的傳回值。 它也可以使用 HRESULT_FROM_WIN32 宏傳回已轉換的系統錯誤碼。 錯誤可能來自 VDS 本身,或來自正在使用的基礎 VDS 提供者 。 可能的傳回值包括下列專案。

傳回碼/值 描述
S_OK
已成功刪除分割區。
VDS_E_INVALID_OPERATION
0x80042415L
媒體不支援這項作業。 例如,您無法刪除CD-ROM上的分割區。
VDS_E_NOT_SUPPORTED
0x80042400L
動態磁碟不支援此作業。
VDS_E_PARTITION_NOT_EMPTY
0x80042408L
擴充分割區不是空的。
VDS_E_BAD_PROVIDER_DATA
0x80042441L
這個值表示提供者錯誤。 作業已中止。
VDS_E_DEVICE_IN_USE
0x80042413L
數據分割正在使用中。
VDS_S_ACCESS_PATH_NOT_DELETED
0x00044244L
已成功刪除分割區,但 VDS 無法移除存取路徑。
VDS_S_UPDATE_BOOTFILE_FAILED
0x00042434L
磁碟分區已成功刪除,但 VDS 無法更新開機設定資料 (BCD) 存放區中的開機選項。

Windows Server 2003: 開機選項會儲存在itanium系統上 x86 或 x64 系統上的 boot.ini 檔案或 NVRAM 中。

規格需求

需求
最低支援的用戶端 Windows Vista [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2003 [僅限傳統型應用程式]
目標平台 Windows
標頭 vds.h
程式庫 Uuid.lib

另請參閱

Disk 物件

IVdsAdvancedDisk