How To Install VMware Infrastructure 2.5 Client on a 64-Bit OS
Written by: Douglas Brown, Microsoft MVP
Without 64-bit support I had to find a workaround so I could access my VMware VI3 environment from my handy dandy dual 24" monitors, dual QUAD core with 8 GB of RAM and 64-Bit Windows Vista Workstation After all, with a machine like this, there was no way I was going to run it from inside a local VM or from one of my 15" or 17" laptops. Therefore to address this problem, my solution was to install the VI client on a 32-bit Citrix Presentation Server and to then "Publish" it to run seamlessly on my local 64-bit Vista machine. For the most part this worked fine but I did run in to a big problem and a few nuisances.
First off, because I'm running through a "remote" session, the drivers and CD-ROM were not that of my local box but were from the Citrix server I was connecting through. This might not seem like a problem, but to me it was, i.e., when I wanted to mount a local CD-ROM or ISO I was forced to find out which Citrix server I was currently logged in to and then copy the 650 GB ISO to it.
Terminal Services and Citrix also do a horrible job supporting multiple monitors. In order to run it "seamlessly", I was stuck with all my VMs running on one of the two monitors. This is not a show stopper, but it sure was annoying.
Annoying is doable, but I did run in to a show-stopper when I tried to console into the Citrix Presentation Server running the VI3 client. It seems VMware does not allow a console connection to the server running the VI3 client as shown below.
So we have learned we can't run the VI3 client locally on a 64-bit workstation and that running it through a Citrix or Terminal Services solution works but leaves us with a couple issues. This being said, I went back to try to figure out what I could do to get the VI3 2.5 client installed on my 64-bit Vista box.
While browsing the VMware Communities forums, I found a thread titled, "VMware Communities: VI Client 2.5 only supports 32bit OS?". This thread answered all my questions. The first two being, what is VMware's response to this problem and when do they plan on releasing a fix for it.? These were answered by the following reply from a VMware Sr. Product Marketing Manager as shown in the following post.
Thanks for the reply. As for the GPF, this is what I was referring to a few posts back, about how we have run into issues with some of the components in the 64-bit host environment. Our client has changed significantly compared to previous versions, so that is one of the reasons it worked with no issues in previous releases. We have seen development issues with our new client on a 64-bit host, so due to other priorities the engineers put in the blocking issue to prevent installing the client.
It appears right now the most valid work around is to run a 32-bit VM until we have our 64-bit client available sometime 2nd half next year.
Sr. Product Marketing Manager - APAC
This is nice to know, but what I really needed was a solution and I found it a bit further down the thread posted by "mcadler". It reads:
|I got VI Client 2.5 running on Vista 64 bit today. It took some effort. The first steps are outlined below.
Run the installer. While it is sitting in the error message about needing a 32 bit OS find and copy "VMware Infrastructure Client 2.5.msi" in a subdirectory of the system temporary directory.
Find an MSI table editor. You can get one called Orca from a Microsoft SDK. (Search for orca.msi.)
Using orca, open the .msi file and delete the LaunchConditions steps from InstallUISequence and from InstallExecuteSequence. This new .msi file will install the program.
Trying to connect to a VM will now probably fail. This is because it needs to run in a 32 bit managed environment and the default is 64. You can either change the entire machine state to default to 32 bits using "c:\Windows\Microsoft.NET\Framework64\v2.0.50727\Ldr64.exe setwow" or use corflags.exe from Visual Studio to set the 32 bit env flag on the VI Client binary itself, using "corflags VpxClient.exe /32BIT+" in "C:\Program Files (x86)\VMware\Infrastructure\Virtual Infrastructure Client\Launcher". The corflags solution is cleaner since it only has to be done once and affects only VI Client. I assume the ldr64 command would have to be done after each boot and it is a global change.
Good luck. We shouldn't all have to do this. It would be trivial to make an installable version with these changes.
Mcadler answered my problem but I must admit it took me a bit of time to figure out where everything was located and it left me with a few questions, not to mention I am a huge fan of a complete pictorial walkthrough so I took it upon myself to do just that.
That being said, the following defines how to install and run the VMware Virtual Infrastructure 2.5 Client (VI3) on a 64-bit Workstation:
1. Download and install the VMware Virtual Infrastructure 2.5 client until you are promoted with the following error. Do not click Ok yet.
2. While it is sitting in the error message about needing a 32 bit OS find and copy "VMware Infrastructure Client 2.5.msi" in a subdirectory of the system temporary directory. This was a bit tricky as I find Vista's new search to be fast but very hard to really find what I need. :) That being said, you will need to do an Advanced Search and make sure you check the Include non-indexed, hidden, and system files (might be slow) checkbox. Click Search and you should find it as I did:
3. Make a backup of the "good" VMware Infrastructure Client.msi in case you run into problems with the next couple of steps.
4. Now it is time to get down and dirty and "hack" the msi file itself. To do this, we need to use a MSI Table Editor. The most common and freely available is Microsoft's ORCA (which stands for "one really cool application"). If you already have ORCA installed then just proceed to the next step but for those of you who do not, you can download ORCA from http://download.microsoft.com/download/platformsdk/sdk/update/win98mexp/en-us/3790.0/msisdk-common.3.0.cab. Once downloaded open the cab file and copy "Orca_Msi.FD66E721_5AA0_41BC_AA26_1EC8F7FA1175" to your desktop and rename it "orca.msi". Then all you need to do is double-click to install.
5. Follow the onscreen instructions. When you are finished launch ORCA from the Start > Programs Group. Once opened click the Open Folder icon to open the MSI downloaded in the step 2.
6. Find and select the MSI from step 2 and click Open.
7. Browse to the InstallExecuteSequence section under Tables and in the right column find and remove the LaunchConditions entry.
8. Browse to the InstallUISequence section under Tables and in the right column find and remove the LaunchConditions entry.
9. Close ORCA and save the newly created MSI file. We are now ready to install the VMware Infrastructure Client.
Double-click the newly created custom VMware Infrastructure Client MSI and accept all the defaults to install.
10. At this point you can run the VMware Infrastructure Client but you will probably run into problems as we need tell Windows to run this application in 32-bit mode. This is done through a really cool utility called "corflags.exe" Corflags.exe is a command line utility that allows you to see if an exe or .dll is meant to run only on a specific platform or under WOW64. You can also use corflags.exe to change the platform status of an .exe or .dll. The latter is what we will be using it for.
For more information about corflags.exe please refer to the following two awesome resources:
· CorFlags Conversion Tool (CorFlags.exe) - command-line arguments.
· Josh Williams : Flipping bits on managed images to make them load with the right bitness - For a great explanation of the corflags.exe utility.
11. Corflags.exe is part of the .NET SDK and you can download it at: Download the NET Framework 2.0 Software Development Kit (SDK) (x64).
12. Once downloaded, browse to: C:\Program Files\Microsoft.NET\SDK\v2.0 64bit\Bin\. In this folder you will find corflags.exe. In order to execute the next step you will need to be in either the " C:\Program Files\Microsoft.NET\SDK\v2.0 64bit\Bin" folder or you need to copy corflags.exe to a directory that is in the current path. I suggest you copy it to C:\Windows. You can always delete it later but it sure will make completing the next step a lot easier. ;)
13. Open to a command prompt and type the following and hit enter.
corflags "C:\Program Files (x86)\VMware\Infrastructure\Virtual Infrastructure Client\Launcher\VpxClient.exe" /32BIT+
14. You are done. Launch the VMware Infrastructure Client 2.5 and have fun!