Aug 11

Update: Microsoft has added WGA to their IE App Compat images rendering them mostly useless in VirtualBox.

Recently at work I've switched from Parallels to VirtualBox for my virtualization needs. VirtualBox has come a long way recently, and I'm very pleased with its performance and ease of use. Parallels was starting to become noticeably slow, and was generally not working well for me anymore.

At first, I tried to convert my Parallels (.hdd) images to VM Ware (.vmdk) format, which is natively supported in VirtualBox. Virtual PC (.vhd) format is also natively supported. Since my Parallels images are fully licensed versions of Windows XP, I didn't want them to go to waste. Sadly, the 'converted' images were corrupt and weren't recognized by VirtualBox, and I ended up wasting several hours.

I decided to ignore Parallels completely and simply use the free Internet Explorer Application Compatibility VPC Images from Microsoft. I should have done this in the first place, because setting them up was a breeze with the help of the internet and a few helpful how-to articles I found. I could link to those how-to's here but instead I wanted to post my own condensed version of the steps I took setting everything up. Mainly for myself for future reference.

Step 1

Download and install VirtualBox and Stuffit Expander. You can skip Stuffit Expander if you already have a tool for opening self-extracting .exe files.

Step 2

Download the free Windows XP IE App Compat VPC images that you'll need and extract the .vhd images with Stuffit Expander (or your tool of choice).

Using Finder, navigate to /Library/VirtualBox and create a new folder for each image. Move the extracted .vhd files into these new folders.

Step 3

In Terminal, run the following for each image:

cd /Library/VirtualBox/<image>
VBoxManage internalcommands sethduuid <image>.vhd

This undocumented command will avoid UUID conflicts when creating multiple VMs. If you're only setting up one VM, you can skip this.

Step 4

In VirtualBox, create a new Windows XP VM and follow the prompts. When asked, choose Use existing hard disk. Click the folder icon to open the Virtual Media Manager. Click Add and navigate to a .vhd file you extracted and relocated in step 2. Click Select to choose the new virtual disk. Finally, click Next then Finish.

Step 5

Start your new VM. Close/cancel any Windows popups or dialogs that appear. There will be quite a few.

From the VirtualBox VM menu bar in OS X select Devices > Install Guest Additions... and follow the Windows prompts. Reboot Windows when asked.

Step 6

Now it's time to install the network drivers. Why this isn't covered by the VirtualBox Guest Additions is beyond me.

In Windows go to Start > Run... and run the following:

D:\VBoxWindowsAdditions-x86.exe /extract /D=C:\Drivers

Back to Start > Run... and run:

devmgmt.msc

In Device Manager, find Network adapters > Ethernet controller. Right click it, and select Update Driver....

In the Hardware Update Wizard choose No, not this time and click Next. Select Install from a list or specific location and click Next. Check the option Include this location in the search and paste the following into the Location box:

C:\Drivers\x86\Network\AMD

Alternatively, you can choose Don't search ... and navigate to the location manually. Click Finish and you should have a working network connection.

Step 7

In Device Manager, find Batteries > Unknown device. In my case, there were two. Right click each and select Disable and confirm. These appear to be VirtualPC specific. In any case, they aren't really necessary anyway.

Next find Universal Serial Bus controllers > Universal Serial Bus (USB) Controller. Again, there were two. Disable them as well.

Finally, find Sound, video and game controllers > Multimedia Audio Controller and disable it.

Repeat steps 4-7 to set up additional VMs, and enjoy your new VirtualBox goodness.

Comments

VT-x is not available. (VERR_VMX_NO_VMX)

If you get that error, read the following post:

http://forums.virtualbox.org/viewtopic.php?f=8&t=17090

I had to edit the XML file. Works great now.

Thanks for the great post. I've found it to be the simplest, fastest tutorial for setting up VB with MS's ie images.

No title

Thanks for the tutorial, it's incredibly helpful. One thing I noticed about step 3 was that on my box everything went to ~/Library/VirtualBox instead of /Library/VirtualBox.

new ie vpc images up (exp jan 1, 2010 for xp)

The new VHDs require activation, which kind of defeats the purpose. Possibly due to a screw-up but with a statement that they won't really try to do anything about it unless enough people beg for help.

For more see here:
http://forums.virtualbox.org/viewtopic.php?f=2&t=21712

Re: New VHDs are Hosed

Yep, sucks. I made a new post describing what I found. Thanks for the link, though. I'm going to try to stay on top of this.

Further comments on this article have been disabled.