Posted on Wednesday, 27th May 2009 by Heiko

VMware vSphere Client op Windows 7

Na het installeren van de vSphere client op mijn 64 bits Windows 7 virtual machine, kreeg ik de volgende error te zien toen ik verbinding wilde maken met mijn vCenter Server: “Error Parsing the server “192.168.0.100″ “clients.xml” file Login will continue contact your system administrator“. Nadat ik op “OK” geklikt had kreeg ik vervolgens de tweede error voor mijn kiezen: “The type initializer for “VirtualInfrastrcture.Utils.HttpWebRequestProxy” threw an exception“. Wat Googlen leerde me snel dat het niet mogelijk was om de vSphere client werkend te krijgen, zonder hierbij gebruik te maken van een workaround. Sommigen brachten als oplossing het gebruiken van de Windows XP modus aan. Dit werkt alleen niet als je het wil gebruiken in een reeds gevirtualiseerde omgeving, zoals in mijn geval op mijn ESX host. Daarom kwam ik snel uit op een stappenplan wat iemand op het VMware Communities forum aandroeg. Na wat gepuzzle met config files, x86-paths en andere tweaks is het me gelukt om de vSphere client aan de praat te krijgen op Windows 7 x64 (Build 7127). Dit is hoe:

  1. Kopieer de System.dll van een systeem waar geen Windows 7, maar waar wel .NET 3.5 SP1 op staat geinstalleerd, naar de Windows 7 computer. Deze DLL is te vinden in de map %SystemRoot%\Microsoft.NET\Framework\v2.0.50727\ op de non-Windows 7 computer (voor de mensen die niet zo snel een .NET 3.5 SP1 installatie klaar hebben staan, daar geen zin in hebben of het lekker makkelijk willen hebben, mijn System.dll online gezet).
  2. Maak een directory aan op de Windows 7 computer waar de VMware vSphere Client geinstalleerd staat, en kopieer de DLL-file van stap 1 naar deze map. Ikzelf heb C:\Program Files (x86)\VMware\Infrastructure\Virtual Infrastructure Client\Launcher\Lib\ gebruikt om mijn DLL-file in te zetten. Deze map ga ik later ook nog gebruiken om een tweetal scriptjes in te plaatsen, welke verderop besproken worden.
  3. In de vSphere Client Launcher directory staat de VpxClient.exe.config file. Open deze in een tekst editor en voeg een runtime-element toe (de rood gekleurde tekst), en sla het bestand daarna op.

    VpxClient.exe.config ziet er dan als volgt uit:

    <?xml version="1.0" encoding="utf-8"?>
    <configuration>
      <system.net>
            <connectionManagement>
                <clear/>
                <add address="*" maxconnection="8" />
            </connectionManagement>
      </system.net>
      <appSettings>
        <add key = "protocolports" value = "https:443"/>
      </appSettings>
      <runtime>
        <developmentMode developerInstallation="true"/>
      </runtime>
    </configuration>
  4. Maak een batch file (bijvoorbeeld vpxclient.bat) door in een tekst file een drietal regels te typen en deze vervolgens op te slaan als “vpxclient.bat” inclusief de quotes, om de bestandsextensie te behouden. Deze regels bevatten een commando om de DEVPATH variabele naar de folder te verwijzen van stap 2.

    Voorbeeld:

    @ECHO OFF
    SET DEVPATH=C:\Program Files (x86)\VMware\Infrastructure\Virtual Infrastructure Client\Launcher\Lib
    "C:\Program Files (x86)\VMware\Infrastructure\Virtual Infrastructure Client\Launcher\VpxClient.exe"
  5. Door vervolgens bovenstaande vpxclient.bat uit te voeren als Administrator, wordt de VMware vSphere Client opgestart en is het mogelijk om in te loggen op de ESX-host of de vCenter Server.
  6. <OPTIONEEL-01> Door de vpxclient.bat file op een plaats naar keuze (in mijn geval C:\Program Files (x86)\VMware\Infrastructure\Virtual Infrastructure Client\Launcher\Lib) neer te zetten, vervolgens een snelkoppeling aan te maken op het bureaublad en de eigenschappen van de snelkoppeling zo aan te passen dat de batch file in een “minimized window” gestart wordt.

    Eigenschappen van de snelkoppeling

  7. <OPTIONEEL-02> Om deze workaround nog gebruiksvriendelijker te maken (het openstaande DOS-window is behoorlijk ongewenst aanwezig, ook al draait het inmiddels geminimaliseerd) heb ik 2 kleine scriptjes geschreven, zodat het DOS-window na opstart helemaal verborgen word en men er geen last meer van heeft. De 2 kleine scriptjes bestaan uit:
    1. een Visual Basic script (invisible.vbs) wat er voor zorgt dat het DOS-window verborgen wordt, nadat vpxclient.bat aangeroepen wordt.
    2. een batch file die ervoor zorgt dat de batch file om de VMware vSphere Client op te starten (vpxclient.bat) en het Visual Basic script (invisible.vbs) samen aangeroepen worden. Deze batch file heb ik vsphere client on win7.bat genoemd.
  8. De invisible.vbs file heb ik samen met System.dll (stap 2) en vpxclient.bat (stap 6) in de C:\Program Files (x86)\VMware\Infrastructure\Virtual Infrastructure Client\Launcher\Lib directory gezet. Vervolgens heb ik de vsphere client on win7.bat file op het bureaublad geplaatst, welke er voor zorgt dat het Visual Basic script en de batch file samen uitgevoerd worden. De batch files en het vbs script zijn door mijzelf geschreven. In de scriptjes is boven de eigenlijke code commentaar te vinden, waarin uitgelegd staat wat het scriptje doet. De scripts zijn gebaseerd op een Windows 7 x64 installatie, waarbij het Program Files path afwijkt van een 32 bits installatie van Windows 7.

    Let op! de batch files moeten allemaal uitgevoerd moeten worden als administrator (rechtsklikken op de file –> “Run as administrator”), anders krijg je de melding: “VpxClient has stopped working”.

Uiteindelijk is het dus, na een grote omweg, mogelijk om de vSphere client te draaien op een 64 bits Windows 7 installatie:

vSphere op Windows 7

Related posts:

  1. Windows XP Lite SP3 op ESX(i): “Setup cannot copy vmscsi.sys”
  2. Virtual Center: “At least one service or driver failed during system startup”
  3. Time Machine back-ups op Popcorn Hour A-110

Posted in Tech | Comments (24)

24 Responses to “VMware vSphere client op Windows 7 (build 7127)”

  1. Stefan Says:

    Bedankt voor de duidelijke uitleg. Zeer nuttig!

  2. Heiko Says:

    Dankjewel Stefan. Ik hoop dat je er iets aan hebt gehad.

  3. Millman Says:

    Ik krijg steeds de melding:

    “please enter a valid server name”

    Enig idee!?

  4. Heiko Says:

    Eerlijk gezegd ben ik deze error nog niet tegen gekomen bij mijn eigen installaties. Na even Googlen werd bij mij de indruk gewekt dat dit eventueel kan liggen aan een onjuiste SQL-installatie. Misschien heb je hier iets aan, anders wil ik deze week nog wel eens kijken of ik zelf de fout kan reproduceren om zo samen een oplossing te zoeken.

  5. Duncan Says:

    Hallo allen,

    Even antwoord op Millman. Dit kreeg ik ook, heb ik opgelost door de DNS naam in te vullen i.p.v. IP adres.

    Het werkt bij mij echter nog niet. Krijg de volgende melding:
    Unrecnized element ‘runtime’. (C:\ProgramFiles(68)\VMware\Infrastructure\Virtual Ifrastructure Client\Launcher\VpxClient.exe.Config Line 10).

    In line 10:

  6. Duncan Says:

    Solved the issue, had to move the

    down down two lines :) . Works like a charm now thanks!

  7. Guido van Brakel Says:

    Hallo,

    De VI Client start bij mij netjes op, maar
    ik kreeg steeds deze melding dat ik een client update moet downloaden. Wat eigenlijk gewoon de vSphere Client 4.0.msi is. Nadat de installatie daarvan is goed gegaan, en ik probeer nogmaals in te loggen krijg ik weer dezelfde melding. Iemand toevallig een oplossing?

    Groet,

    Guido van Brakel

  8. Ejal Says:

    Het is veel netter om de variabele te definieren als systeemwijde variabele. (Onder control panel – syetem – advanced)

    Je hoeft dan ook niet een batch script te gebruiken, en je hoeft de Vsphere client niet meer als administrator op te starten.

  9. Rob Says:

    Works great, even on my 32-bit build 7137, thanks!

  10. Menno Says:

    Het thanks kerel, duidelijk en het werkt ook nog.
    Toppie.

  11. Arthuro Says:

    Heiko,

    Bedankt hiervoor! Het werkt als een speer.

  12. Remco Says:

    mmm.bij mij nog niet….stopped working….terwijl ik het wel als admin doe…

  13. Peter Says:

    Werkt bij mij weer perfect nu (Windows7 Ultimate-X86). Bedankt voor de kundige handleiding!

  14. Molski Says:

    Leipe shit ouwe! Helemaal geweldig, thanks!

  15. Mathieux Says:

    heel erg bedankt!!!!!

  16. VMware vSphere client op Windows 7 « Molski's Blog | Cuz I simply can't remember everythin' I do… Says:
  17. Robert Hoekstra Says:

    In systeemeigenschappen kan devpath als environment variabele opgevoerd worden, andere programma’s maken hier vermoedelijk geen gebruik van. door in de eigenschappen van vpxclient.exe aan te vinken dat het als administrator uitgevoerd moet worden, ben je helemaal verlost van het gebruik van .bat bestandjes.

    Start -> (rechtermuisknop op) Computer -> eigenschappen.
    Klik op ‘Geavanceerde instellingen’. Een nieuw venster verschijnt.
    Ga naar omgevingsvariabelen (knop) en voer bij systeembrede variabelen de variabele DEVPATH op met het pad naar het ‘lib’ pad in.

    vpxclient.exe doet het ineens zonder poespas.

  18. Robert Hoekstra Says:

    Oh.. verder.. thx! goede beschrijving !! :)

  19. Jasper Says:

    Helemaal super! Erg mooie uitleg en fijn dat je die dll geupload hebt!

    Heel erg bedankt!

  20. Leon Straathof Says:

    Mooie fix heb er meteen maar een mooie installer van gemaakt, zodat iedereen die er behoefte aan heeft de fix kan installeren ipv met de hand uitvoeren. Uninstall werkt trouwens ook en herstelt de oorspronkelijke staat weer al heb ik geen idee wat je daarmee zou willen de vSphere Client werkt dan immmers niet.

    http://www.lynxsoft.nl/index.php?option=com_phocadownload&view=category&id=1:vmware-esx&Itemid=53

  21. Heiko Says:

    Leon Straathof: Mooie fix heb er meteen maar een mooie installer van gemaakt, zodat iedereen die er behoefte aan heeft de fix kan installeren ipv met de hand uitvoeren. Uninstall werkt trouwens ook en herstelt de oorspronkelijke staat weer al heb ik geen idee wat je daarmee zou willen de vSphere Client werkt dan immmers niet.http://www.lynxsoft.nl/index.php?option=com_phocadownload&view=category&id=1:vmware-esx&Itemid=53

    Fantastisch om te zien dat er zelfs mensen zijn die installers bouwen om het probleem te kunnen omzeilen!

    Nu is er met de release van vSphere Update 1, ook een Windows 7 capabele client gereleased welke te downloaden is van de VMware website. Ik raad dan ook iedereen aan om die client te gebruiken, waarbij het niet nodig is om allerlei DLL’s te kopiĆ«ren, etc.

  22. Leon Straathof Says:

    Heiko, zag de update1 een beetje te laat maar toch bedankt. Als je in de toekomst nog eens iets fixed en er een mooie installer van wilt laat het dan even weten.

  23. Leon Straathof Says:

    Grappig om te zien de installer die ik gemaakt heb nog steeds populair is ondanks dat men nu ook voor update 1 zou kunnen kiezen. De download teller staat sinds vandaag op 300 ;-)

  24. Reinoud van Santen Says:

    Heiko bedankt ouwe! Dat ik nou moet googelen op het probleem en bij jou uit kom. Dank voor de oplossing!

Leave a Reply