VMware vSphere SDK 4.0 mit Visual Studio 2008 fast track

Ich habe mir das VMWare SDK 4.0 für C# mal angesehen. Bis man wirklich etwas sieht, gibt es leider einige Stolpersteine zu umgehen. Das SDK ist für Visual Studio 2005 gebaut und mag neuere Versionen nicht besonders. Nach einigen Experimenten (unter anderem mit Visual Studio 2010 RC) und Tipps aus dem VMWare-Forum hier ein Rezept für Kurzentschlossende:

  1. Download der Visual Studio 2008 Trail-Version von Microsoft in Form einer Virtual PC Edition, ich habe die „Visual Studio Team System 2008 Team Suite with Visual Studio Team System 2008 Team Foundation Server“ genommen. Da sind auch die notwendigen Tools wie z.B. das Windows SDK schon installiert.
  2. Download der VMware vSphere Web Services SDK 4.0 und entpacken
  3. Visual Studio 2008 VM starten und sich als Benutzer TFSSETUP anmelden. Einen Shared Folder für die entpackte VMWare SDK einrichten. Der SDK-Ordner war bei mir auf Laufwerk Y: gemapped, der Pfad zu dem VS-Beispielprojekt lautete daher Y:\SDK\samples\DotNet
  4. Über das Startmenü den „Visual Studio 2008 Command Prompt“ aufrufen und in das Verzeichnis Y:\SDK\samples\DotNet wechseln
  5. „set WSDLFILE=Y:\SDK\wsdl“ ausführen, damit die Stubs sauber generiert werden
  6. Die Zeile in der Datei Build2005.cmd
    @echo Building Samples in Debug mode
    %DEVENV% cs\Samples2005.sln /build Debug

    ändern in

    @echo Building Samples in Debug mode
    „%DEVENV%“ Y:\SDK\samples\DotNet\cs\Samples2005.sln /rebuild Debug

  7. Folgende Zeilen in der Datei genvimstubs.cmd auskommentieren
    rem if not exist %VSINSTALLDIR%\SDK\v2.0\bin\wsdl.exe goto err_no_VSTOOLS
    rem if not exist %WINDIR%\Microsoft.NET\Framework\v2.0.50727\csc.exe goto err_no_VSTOOLS
  8. Build2005.cmd ausführen

Danach kann man mit Visual Studio 2008 das Projekt öffnen und in ein 2008-Projekt konvertieren. Hinweis: ein Doppelklick auf die Projektdatei öffnet standardmäßig Visual Studio 2005, das ist auch noch teilweise in der VM installiert.

Der Beispielaufruf (nach dem Developer’s Setup Guide):

Y:\SDK\samples\DotNet\cs\SimpleClient\bin\debug>SimpleClient.exe https://mein-esx-server/sdk useraccount password