vSphere 4.0 Client unter Windows 7

Thursday, 16 July 2009 16:28:03 (W. Europe Daylight Time, UTC+02:00)
Leider funktioniert der vSphere 4.0 Client nicht mit der Version des .NET Frameworks unter Windows 7. Aber natürlich gibt es dafür einen eleganten Workaround, daß dem vSphere Client auf die Sprünge hilft.



Im VMware Forum habe ich die folgende Anleitung gefunden, die ein Mitstreiter veröffentlicht hat:

An dieser Stelle erst einmal Danke an die aktiven Mitstreiter in den Foren. Leider kommt es auf der deutschen Community offensichtlich nicht zu einer so großen Nutzerzahl, die auch regelmäßig Neues kundtun, so dass es leider an den Bloggern bleibt technische Tricks und Raffinessen zu veröffentlichen. Schade eigentlich! Nun zum Thema:

Von einem Nicht-Windows-7 Rechner (am Besten Windows Vista oder Windows XP) wird folgende Datei benötigt:
%SystemRoot%\Microsoft.NET\Framework\v2.0.50727\System.dll



Hier am Beispiel eines Windows 2008 Servers x64 Edition mit SP2 und .NET 3.5 SP1.

System.dll zum Herunterladen: System.dll.zip (1,01 MB)

Hierbei handelt es sich um eine .Net 3.5 SP1 Datei, die zum Ausführen des vSphere 4 Clients unter Windows 7 RC benötigt wird. Als nächstes muss ein neuer Ordner im Installationsverzeichnis des VMware vSphere Clients mit der Bezeichnung „Lib“ erstellt werden. Je nach Version (x64 oder x86) liegt dieser unter:
32 Bit Version
%ProgramFiles%\VMware\Infrastructure\Virtual Infrastructure Client\Launcher\Lib

64 Bit Version
%ProgramFiles(x86)%\VMware\Infrastructure\Virtual Infrastructure Client\Launcher\Lib

Nachdem der Ordner erstellt wurde, die System.dll Datei hierher kopieren. Anschließend muss folgende Datei in einem Texteditor geladen werden:
<VMware Client Installationsverzeichnis>\Launcher\VpxClient.exe.config

Es muss ein zusätzliches Runtime Element hinzugefügt werden:
<runtime>
<developmentMode developerInstallation="true"/>
</runtime>

Die fertige Datei sollte ungefähr so aussehen:
<?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>

Um den Client zu starten ist ein kleines Batchskript notwendig.
<VMware Client Installationsverzeichnis>\Launcher\VpxClient.cmd

Der Inhalt ist wieder je nach Windows 7 RC Edition unterschiedlich

32 Bit Version
SET DEVPATH=%ProgramFiles%\VMware\Infrastructure\Virtual Infrastructure Client\Launcher\Lib
"%ProgramFiles%\VMware\Infrastructure\Virtual Infrastructure Client\Launcher\VpxClient.exe"

64 Bit Version
SET DEVPATH=%ProgramFiles(x86)%\VMware\Infrastructure\Virtual Infrastructure Client\Launcher\lib
"%ProgramFiles(x86)%\VMware\Infrastructure\Virtual Infrastructure Client\Launcher\VpxClient.exe"

Mit der Batch Datei lässt sich nun der Client ohne Fehler starten.





Als Alternative kann man auch die "DEVPATH" Variable als neue Systemvariable oder Benutzervariable hinterlegen, dass erspart einem dann die Batchdatei. Wichtig ist, dass die DEVPATH Variable ohne Anführungszeichen für den String Wert hinterlegt wird, sonst klappt es nicht und Windows 7 meldet, dass die Anwendung nicht mehr funktioniert.
Nachtrag:
Der Workaround funktioniert nur dann, wenn beim Startaufruf für den Client keine weiteren Parameter mitgegeben werden wie etwa:
  • Sprachpaketfixierung: -locale en-us
  • Fixer Anmeldeserver: -s "vcserver.domain.tld"
  • SSO: -passThroughAuth (in vSphere 4.0, obsolete; einfach den Checkbox setzen)