I’ve been struggling to get Virtual PC to run properly on Vista and today after a few more tweaks here and there I was finally able to make VPC work properly.

 

VPC works fine on Vista, but there are a few big gotchas (at least for me) that threw things off badly for me.  When you first install VPC you’ll get a big fat warning that says there are compatibility problems. There are but so far I haven’t seen any major problems once I had everything configured right. There are a some issues with video not properly refreshing from time to time, but I can live with that in the guest OS.

 

Don’t run VPC on Aero!

I originally installed VPC when I was having video driver issues and so I was running with the Aero UI off. VPC installed fine and ran although I had a few problems from the get go (more on this in a second). Performance was good but I had no network connectivity.

 

Sometime later I figured out my video driver issues by downloading a newer nVidia driver and switched to Aero. Now VPC switches out of Aero automatically when VPC is started, but apparently it doesn’t do this quite correctly or maybe it’s not completely doing so with my video driver. Anyway, after doing so VPC would become incredibly slow – taking about 5 minutes just to get past the BIOS POST screen. I didn’t associate the problem with Aero for quite some time though.

 

On a hunch I turned off Aero and boom VPC was right back to working normally at speeds comparable to running under XP. So if you want to start VPC turn off Aero first then launch VPC.

 

It’s possible this is specific to my Video card and drivers, but if you see VPC running dog, dog slow (even slower than without Virtual PC Additions <g>) this is likely the culprit.

 

Use Shared Networking

Normally when I run VPC I use the wired network adapter on my machine which gives me a real network connection in VPC that goes onto my internal router network. This is usually the best way to go because you can access other machines on your local network as well as the host OS by machine name. This is always hit or miss I find even under the best circumstances. For one thing VPC has never recognized any of my wireless adapters – it only works with wired adapters normally.

 

Either way it doesn’t work with Vista Beta 2 on my machine. I tried both XP and Win2003 VPCs and neither sees the network adapter in fact throwing some sort of start up error right at boot time about the adapter. I even went as far as uninstalling and re-installing the virtual machine additions on the virtual drives that were prepared previously on XP.

 

You can however use shared networking (NAT) in VPC which simulates a software router in VPC and gives you access to the network. NAT works well for outbound traffic but there are some issues if you’re running Windows 2003 server in that NAT will use an oddball gateway address that won’t allow you to see the rest of your network or your host operating system. In some cases it may not work at all unless you manually configure DNS and IP address as described here by Virtual PC Guy.

 

So on my Windows 2003 partition I can’t read and write data directly between the two machines. However I can use the shared USB drive to write data to and from so at least I can get the data there. In fact, I would argue this is faster anyway since copying files into VPC seems to be one of the slowest operations.

 

Later... On Windows XP VPC I was able to make a direct network connection between the machines.

 

Run Full Screen

This is always good advice for VPC but especially under Vista B2. The VPC session has a lot of issues refreshing the screen in windowed mode, but it seems to have no problems in full screen mode.

 

 

 

Took a while to get here, but I’m good to go. Overall performance of VPC is comparable to what I was seeing on XP so I have no complaints for performance. I can use Windows 2003 to test my Web apps and check I’m not introducing IIS 7 specific code into them before sending them out <g>…