Sequencing vSphere Client V5 ends up with V4.1
Recently I had to sequence the vSphere Client V5 Update 1 Client with App-V. What normally sounds like an easy task ended up with some trouble…
To create an unattended installation job just download the viclient.exe from the vCenter Server (https://vcenterserver) and start the binary. This extracts all MSI sources to your %TEMP% directory. Now you can copy this directory and create an installation batch which is executing an msiexec:
set src=%~dp0
start /wait msiexec /i “%src%extract\VMware vSphere Client 5.0.msi” /l*v “%temp%\VMware vSphere Client 5.0.log” /qb-
When you use this installation-batch for testing purposes on a local machine, everything runs smoothly and you get a clean installation. In the next step I tried to sequence this installation-batch to get an App-V package. To sequence you have to start the App-V Sequener gui and create a new package with a custom installation path or run the sequencer (like me) from the commandline:
“C:\Program Files (x86)\Microsoft Application Virtualization Sequencer x64\SFTSequencer.com” /PACKAGENAME:”vsphere-client5″ /INSTALLPACKAGE:”C:\temp\vsphere-client5\install.cmd” /INSTALLPATH:”Q:\vsphere-client5″ /OUTPUTFILE:”C:\app-v\vsphere-client5\vsphere-client5.sprj”
The install.cmd is the installation-batch mentioned before. When you now start the vSphere Client from the package and connect to a vSphere5 Server it tells you to update your vSphere Client. Remember: the same installation-batch without App-V was running fine. When I checked the startup-link for the client it looked like this:
As you see the vSphere Client is mentioned as version 4.1*, but comparing this to the local installation the correct version of “C:\Program Files (x86)\VMware\Infrastructure\Virtual Infrastructure Client\Launcher\vpxclient.exe” should be something like 5.0.*.
This proves that something is going wrong during the sequencing process. After some research on the web I found a Technet Discussion which seems to pinpoint the root cause: the vSphere Client installer is trying to create a proprietary USB Service and start it. This service runs natively on a system, but not within the App-V sequencing sandbox. The installer seems to check if the service has been started successfully and otherwise falls back to an old version.
As descripted in the discussion I created an MST and adjust my installationbatch:
start /wait msiexec /i “%src%extract\VMware vSphere Client 5.0.msi” TRANSFORMS=”%src%extract\without-usb.mst” /l*v “%temp%\VMware vSphere Client 5.0.log” /qb-
This will disable the USB service during the setup and ends up with the correct link:
You could create the mentioned MST yourself or download it here.
which seems to
pinpoint the cause.