VS2010 Menu Text Looks Corrupt Under VMWare Workstation 7

Earlier this week I upgraded my VM Workstation to 7 from 6.5.  One of the benefits of this was supposed to be support for Windows Aero for Guest Win7 virtual machines.  I needed to set a couple of things in order for Aero to even become enabled in my virtual machine since I was working with VMs I already had created.

  1. Ensure that you set the Virtual Machine Settings to Accelerate 3D Graphics in the Display settings for the VM.  Note that the VM must be off for you to set this.

image

  1. Turn on your VM and boot to Windows 7.  Aero may not take affect immediately. 

  2. To turn on Aero you can try out the troubleshooter to get it on (hit the start button and type Aero, then select the troubleshooter for transparency) or select a theme that supports Aero.  I’m sure there is a bit you can flip somewhere to just turn it on, but I couldn’t find it and the troubleshooter worked just fine.

image

So, now you have Aero in your VM.  Oooohhhh, pretty.

But when I started up VS2010 I got a little shock.

image

I couldn’t read any of the menus.  Needless to say this was less than helpful.  I submitted a bug on Connect and received the following answer:

“This is an issue with VMWare’s hardware acceleration emulation. Please report this issue to VMWare in support of a solution. In the mean time you can force WPF to software rendering to work around the issue (disable hardware acceleration with instructions here: http://msdn.microsoft.com/en-us/library/aa970912.aspx)”

This article says to create a Registry DWORD key at HKEY_CURRENT_USER\SOFTWARE\Microsoft\Avalon.Graphics\DisableHWAcceleration and set it to a value of 1.  Doing this disabled the hardware acceleration for WPF only.  This lets me still run Aero on the VM guest, but I can read the menus for VS 2010 as well.

image

Yeah!

Why is this important?  Well, if you are using VM Ware to host your development environment and you’re targeting Windows 7 client applications you’ll want Aero turned on so you can see any feature you’re adding that works with Aero.  If you don’t turn off the hardware acceleration for WPF you’ll have a hard time using VS 2010 (if you use the menu at all that is).  Note that several other folks have told me that having 3d Acceleration on in VMWare causes other issues as well (though I didn’t get any specifics).

If you fall into the category of people this would affect, take time to communicate with VMWare to ask them to improve their acceleration emulation support.

UPDATE (1/9/2010): I’ve turned off the Accelerate #D Graphics option again.  I noticed a significant degradation in performance with this on.