共用方式為


IVMHardDisk::MergeTo 方法

[Windows 虛擬電腦已不再可供Windows 8使用。 請改用 Hyper-V WMI 提供者 (V2) 。]

將差異虛擬硬碟與其所有父系 (合併,並包含根父虛擬硬碟) 到新的硬碟檔案。

語法

HRESULT MergeTo(
  [in]          BSTR           newDiskImagePath,
  [in]          VMHardDiskType newDiskImageType,
  [out, retval] IVMTask        **mergeTask
);

參數

newDiskImagePath [in]

將合併所選磁片映射之新目標磁片映射的路徑。

newDiskImageType [in]

新目標磁片映射的類型。 新目標磁片映射允許的映射類型vmDiskType_Dynamic和vmDiskType_FixedSize。 如需詳細資訊,請參閱 VMHardDiskType

mergeTask [out, retval]

用來追蹤合併程式完成的 IVMTask 物件。

傳回值

這個方法可以傳回下列其中一個值。

傳回碼/值 描述
S_OK
0
作業成功。
E_POINTER
0x80004003
參數為 Null
E_INVALIDARG
0x80000003
newDiskImagePath參數是空的。
HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND)
0x80070002
系統找不到 newDiskImagePath 參數指定的檔案。
HRESULT_FROM_WIN32 (ERROR_PATH_NOT_FOUND)
0x80070003
系統找不到 newDiskImagePath 參數所指定的路徑。
HRESULT_FROM_WIN32 (ERROR_INVALID_NAME)
0x8007007b
newDiskImagePath參數包含不正確字元, (下列其中一個:「*? <>/|「:」) 。
HRESULT_FROM_WIN32 (ERROR_BAD_PATHNAME)
0x800700a1
newDiskImagePath參數會指定空白或相對路徑。 絕對路徑是必要的。
HRESULT_FROM_WIN32 (ERROR_BUFFER_OVERFLOW)
0x8007006f
newDiskImagePath參數所指定的路徑太長。 路徑必須小於 260 個字元。
HRESULT_FROM_WIN32 (ERROR_SHARING_VIOLATION)
0x80070020
此物件所參考的虛擬硬碟正在使用中,或正在使用這個虛擬硬碟的父系。
VM_E_WRONG_HD_IMAGE_TYPE
0xA004067B
此錯誤是因為這個 IVMHardDisk 物件所參考的虛擬硬碟映射不是差異磁片映射,或是 因為 newDiskImageType 參數不是其中一個可接受的值, vmDiskType_DynamicvmDiskType_FixedSize
HRESULT_FROM_WIN32 (ERROR_ALREADY_EXISTS)
0x800700b7
newDiskImagePath參數所參考的檔案已經存在。
HRESULT_FROM_WIN32 (ERROR_DISK_FULL)
0x80070070
主機磁片區沒有足夠的空間可合併此虛擬硬碟。
VM_E_PARENT_PATH_NOT_FOUND
0xA0040677
這個物件所參考之虛擬硬碟的父代不存在。
VM_E_APP_SHUTTING_DOWN
0xA0040209
因為應用程式正在關閉,所以無法合併虛擬硬碟映射。
DISP_E_EXCEPTION
0x80020009
已發生未預期的錯誤。

規格需求

需求
最低支援的用戶端
Windows 7 [僅限傳統型應用程式]
最低支援的伺服器
都不支援
用戶端支援結束
Windows 7
產品
Windows Virtual PC
標頭
VPCOMInterfaces.h
IID
IID_IVMHardDisk定義為 ffa14ae6-48f5-42a4-8a22-186f2e5c7db0

另請參閱

IVMHardDisk