2012-02-21 8 views
2

Я пытаюсь подключиться к машине VMWare Player с помощью VMWareTasks (http://vmwaretasks.codeplex.com), но выдает ошибку ..Как я могу подключиться к VMWare с помощью VIX (C#) обертку

// 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 билд-591240 (ОС Windows), Windows 7 ...

виртуальной машины имеют VMWare инструменты ...

Do I нужно установить больше 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 
) 

ответ

1

Немного поздно, я знаю, но как насчет следующего способа получения VMWareVirtualMachine объекта вы можете использовать:

VMWareVirtualMachine virtualMachine = SetupVM(virtualHost, vmfile); 

Просто сделайте двойную проверку против нуля, чтобы убедиться, что у вас есть реальный экземпляр вы можете использовать. Вот как я это делаю, но, возможно, мой вариант использования отличается от вашего.

+0

Я не мог сделать это в тот момент, я сделал с vmrun.exe CLI ... –

0

Я не уверен, если это точно такое же, но строка коды вы говорите, бросает ошибку нуждается в хост и учетных данных пользователя при подключении к VIServer:

virtualHost.ConnectToVMWareVIServer(VMServerHost, VMServerUserName, VMServerPassword);

Можете ли вы предоставить эту информацию методу VMWareVirtualHost.ConnectToVMPlayer?

+0

virtualHost.ConnectToVMWareVIServer ("localhost", "siretih", "joelvi"); вытащите ту же ошибку, потому что я установил juts VMWare Player .. –