Windows Phone 7 Development in a (VMWare) Virtual Machine
Let’s start by stating clearly that Windows Phone 7 Development is not supported by Microsoft in a Virtual Machine environment. Still, maybe like you too, I like to keep my laptop clean and have all different development environments in different Virtual Machines. It helps preventing conflicts across all different tools that you end up installing when you target a specific server or client environment. Be it third party tools, Silverlight or different databases… aargh…
Personally I enjoy using VMWare Player a lot and that is where I tried to make the Windows Phone 7 development work. This is a one click install from the MSDN App Hub if you have a Windows 7 workstation running. If you already have Visual Studio 2010 there or Expression Blend 4.0, all tools will become part of your existing development environment. Otherwise Express versions of these tools will be installed. Getting started is the easy part.
The moment I tried to use the Windows Phone 7 emulator however, my troubles started. It turned out that the default of 1GB ram memory allocated should be increased to at least 2GB. Also my hardware did not correctly support the WDDM video requirements. That is something that will quietly present itself in the Device Manager. Next fix needed:
virtualHW.version = "7"
guestOS = "windows7"
or at least
guestOS = "winvista"
Now the emulator will be able to get past the cold boot sequence and run Windows Phone 7.
All seems to be well until you want to deploy to a hardware Windows Phone 7 device. You need the Zune software install to be able to sync with a Windows Phone 7 (yes I understand, no its not something I enjoy). The trouble is that the guest OS does not support USB 2.0 by default and this is a requirement to make sync work. The last fixes are:
ehci.present = "TRUE"
and if needed:
ehci.pciSlotNumber = "16"
There are no changes needed on the host. Zune complains in my Virtual Machine that its not happy with the video support, but I am not planning to sync all my content from this developer environment, so I ignored it.
Now it works for me! Happy coding!
Posted on
16-01-2011
by Wim The
0 Comments
|
Trackback Url
|
Link to this post
Tags: