IVMVirtualMachine::StartCommunicationChannel 方法

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

设置主机和来宾操作系统之间的信道。

语法

HRESULT StartCommunicationChannel(
  [in] VMEndpointType inHostEndpointType,
  [in] BSTR           inHostEndPointName,
  [in] VMEndpointType inGuestEndpointType,
  [in] BSTR           inGuestEndpointName
);

parameters

inHostEndpointType [in]

此参数必须 vmEndpoint_NamedPipe (0) 。

inHostEndPointName [in]

唯一管道名称。 此字符串必须采用以下格式:“\\.\pipe\pipe\pipename”。 名称的 管道名称 部分可以包含除反斜杠以外的任何字符,包括数字和特殊字符。 整个管道名称字符串最多可以包含 256 个字符。 管道名称不区分大小写。

inGuestEndpointType [in]

此参数必须 vmEndpoint_TCPIP (1) 。

inGuestEndpointName [in]

来宾中 TCP 服务器侦听的端口号。

返回值

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

返回代码/值 说明
S_OK
0
操作成功。
E_INVALIDARG
0x80000003
inHostEndpointType 参数未vmEndpoint_NamedPipe (0) 或 inGuestEndpointType 参数未vmEndpoint_TCPIP (1) 。
E_POINTER
0x80004003
inHostEndPointNameinGuestEndpointName 参数为 NULL 或无效值。
DISP_E_EXCEPTION
0x80020009
发生意外错误。
HRESULT_FROM_WIN32 (ERROR_INVALID_HANDLE)
0x80070006
句柄无效。
HRESULT_FROM_WIN32 (ERROR_OUTOFMEMORY)
0x8007000e
没有足够的内存可用于完成此请求。
HRESULT_FROM_WIN32 (ERROR_NOT_READY)
0x80070015
它用于提供网络服务的基础系统目前正在初始化。
HRESULT_FROM_WIN32 (ERROR_ALREADY_EXISTS)
0x800700b7
管道名称已在使用中。
HRESULT_FROM_WIN32 (ERROR_PIPE_BUSY)
0x800700e7
一个或多个频道正在运行,可能很快可用。
HRESULT_FROM_WIN32 (ERROR_MAX_SESSIONS_REACHED)
0x80070161
可用的最大通信通道数是正在使用的。 此时无法启动另一个通道。
HRESULT_FROM_WIN32 (ERROR_REVISION_MISMATCH)
0x8007051a
主机版本与来宾子系统之间存在不匹配。 有关详细信息,请参阅Windows事件日志。
VM_E_VM_NOT_RUNNING
0xA0040206
VM 未运行。

注解

当前实现仅支持主机上的命名管道接口和来宾操作系统上的 TCP/IP 接口。

要求

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

另请参阅

IVMVirtualMachine

VMEndpointType