IVMVirtualMachine::AddHardDiskConnection 方法

[自Windows 8起,Windows 虚拟电脑不再可供使用。 请改用 Hyper-V WMI 提供程序 (V2) 。]

将新的硬盘连接添加到虚拟机 (VM) 。

语法

HRESULT AddHardDiskConnection(
  [in]          BSTR                  hardDiskPath,
  [in]          long                  busNumber,
  [in]          long                  deviceNumber,
  [out, retval] IVMHardDiskConnection **hardDiskConnection
);

parameters

hardDiskPath [in]

虚拟硬盘的完整路径 (要连接的 VHD) 文件。

busNumber [in]

驱动器将连接到的总线。

含义
0
驱动器将连接到第一个总线。
1
驱动器将连接到第二个总线。

deviceNumber [in]

驱动器将连接到的设备。

含义
0
驱动器将连接到总线上的第一个设备。
1
驱动器将连接到总线上的第二台设备。

hardDiskConnection [out, retval]

IVMHardDiskConnection 对象。

返回值

此方法可以返回其中一个值。

返回代码/值 说明
S_OK
0
操作成功。
E_POINTER
0x80004003
hardDiskConnection 参数为 NULL
E_INVALIDARG
0x80000003
hardDiskPath 参数为 NULL,或者 busNumberdeviceNumber 参数无效。
HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND)
0x80070002
系统找不到 由 hardDiskPath 参数指定的文件。
HRESULT_FROM_WIN32 (ERROR_PATH_NOT_FOUND)
0x80070003
系统找不到 由 hardDiskPath 参数指定的路径。
HRESULT_FROM_WIN32 (ERROR_INVALID_NAME)
0x8007007b
hardDiskPath 参数包含无效字符 (“*?<>/|“:”) 。
HRESULT_FROM_WIN32 (ERROR_BAD_PATHNAME)
0x800700a1
hardDiskPath 参数指定空路径或相对路径。 绝对路径是必需的。
HRESULT_FROM_WIN32 (ERROR_BUFFER_OVERFLOW)
0x8007006f
hardDiskPath 参数指定的路径太长。 路径必须小于 260 个字符。
VM_E_VM_UNKNOWN
0xA0040207
配置未知。
VM_E_VM_RUNNING_OR_SAVED
0xA004020B
VM 处于运行或保存状态。
VM_E_DRIVE_BUS_LOC_IN_USE
0xA00400503
指定的总线位置正在使用中。
VM_E_INVALID_HD_FILE
0xA0040682
VHD 大于 127 GB,无法连接到 IDE 总线。
VM_E_UNSUPPORTED_HD_DISK_TYPE
0xA00400686
hardDiskPath 参数引用链接的 VHD 或与链接 VHD 的差异 VHD。 链接的 VHD 不能附加到虚拟机。
HRESULT_FROM_WIN32 (ERROR_SHARING_VIOLATION)
0x80070020
指定的 VHD 已连接到此 VM 的另一个总线位置。
DISP_E_EXCEPTION
0x80020009
发生意外错误。

备注

只能将新的硬盘连接添加到已停止的虚拟机。

要求

要求
最低受支持的客户端
Windows 7 [仅限桌面应用]
最低受支持的服务器
无受支持的版本
客户端支持终止
Windows 7
产品
Windows Virtual PC
标头
VPCCOMInterfaces.h
IID
IID_IVMVirtualMachine定义为 f7092aa1-33ed-4f78-a59f-c00adfc2edd7

另请参阅

IVMVirtualMachine