【问题标题】:How can I connect to vmware using VIX (c# wrapper)如何使用 VIX (c# wrapper) 连接到 vmware
【发布时间】:2012-08-02 04:17:31
【问题描述】:

我正在尝试使用 VMWareTasks (http://vmwaretasks.codeplex.com) 连接到 VMWare Player 机器,但抛出错误..

// declare a virtual host
using (VMWareVirtualHost virtualHost = new VMWareVirtualHost())
{
    string vmfile = @"D:\SIRETIH-Releases\SIRETIH_Virtual\pc-virtual\siretih.vmx";
    // connect to the host
    virtualHost.ConnectToVMWarePlayer(); // <<-- this line throws an error... 

    using (VMWareVirtualMachine virtualMachine = virtualHost.Open(vmfile))
    {
        virtualMachine.WaitForToolsInGuest();
        virtualMachine.LoginInGuest("siretih", "");
    }
}

我正在使用 Visual Studio 2010 (C#)、VMWareTasks、VmWare Player 4.0.2 build-591240 (Windows OS)、Windows 7 ...

虚拟机有vmware工具...

我还需要安装 dll 或 api 吗?

No se controló System.Exception
Message=Failed to connect: serviceProviderType="Player" hostName="" hostPort=0 username="" timeout=60
Source=Vestris.VMWareLib
  StackTrace:
en Vestris.VMWareLib.VMWareVirtualHost.Connect(ServiceProviderType serviceProviderType, String hostName, Int32 hostPort, String username, String password, Int32 timeout)
   en Vestris.VMWareLib.VMWareVirtualHost.ConnectToVMWarePlayer(Int32 timeoutInSeconds)
   en Vestris.VMWareLib.VMWareVirtualHost.ConnectToVMWarePlayer()utionContext, ContextCallback callback, Object state)

ConnectToVMWarePlayer() 方法只有一个参数...有一个方法“ConnectToVMWareVIServer”但我没有使用 vmware 服务器只是播放器...

public void ConnectToVMWarePlayer(
    int timeoutInSeconds
)

【问题讨论】:

    标签: c# api vmware virtualization vix


    【解决方案1】:

    我知道有点晚了,但是以下获取您可以使用的VMWareVirtualMachine 对象的方法怎么样:

    VMWareVirtualMachine virtualMachine = SetupVM(virtualHost, vmfile);
    

    只需对 null 进行双重检查,以确保您有一个可以使用的实际实例。我就是这样做的,但也许我的用例与你的不同。

    【讨论】:

      【解决方案2】:

      我不确定它是否完全相同,但是你说的抛出错误的代码行在连接到 VIServer 时需要主机和用户凭据:

      virtualHost.ConnectToVMWareVIServer(VMServerHost, VMServerUserName, VMServerPassword);

      您能否将该信息提供给 VMWareVirtualHost.ConnectToVMPlayer 方法?

      【讨论】:

      • virtualHost.ConnectToVMWareVIServer("localhost", "siretih", "joelvi");抛出同样的错误,因为我已经安装了 juts VMWare Player..
      猜你喜欢
      • 1970-01-01
      • 2015-11-06
      • 2014-11-05
      • 1970-01-01
      • 1970-01-01
      • 2017-03-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-03
      相关资源
      最近更新 更多