64 bit Woes
I have recently "upgraded" to a new laptop running Windows Vista 64 bit. The machine is blindingly fast at running most software. The problem is getting software to install in the first place. Most of that is down to the fact that it runs 64 bit Vista. I have had lots of problems finding 64-bit drivers for many existing peripherals. Some software refuses to install at all, but gives no errors. There are so many "reliability and availability" updates for Windows Vista on the Microsoft Downloads site that after a while you start to get worried....
Many of the recent Microsoft Beta versions such as those for Windows Live Writer seem to be no-go zones currently, as they currently don't support 64-bit versions. In fact for Live Writer you have to revert back to the Beta version 1 to get it to install on 64 bit operating systems.
Windows Mobile Client Software Factory On 64 bit Operating Systems
Sadly 64 bit operating system support is also an issue with the Windows Mobile Client Software Factory. The Microsoft Patterns and Practice Group web site warns that installations of the Windows Mobile Client Software Factory on x64 operating systems are not supported. Attempts to install the June 2006 refresh version even with the latest Patterns and Practice Guidance Automation Toolkit (GAT) , fail with a message that the June version of the GAT is not installed. As a result, the installation has to be terminated. This is because the installer does not look in the same location that the 64 bit version has already installed the GAT to. As a result the installer decides to conclude that no GAT has ever been installed! This is only the beginning of many issues however, most of which are installer related.
If you really want to get Windows Mobile Client Software Factory installed on 64-bit OSes there is a great article by Joshua Mouch on the all the causes and a guide of how to get this to install on 64-bit Vista. A word of warning however - this is not for the faint hearted! It involves hand crafting a registry file that is specifically tailored to the paths on your machine, so there is not much margin for error. You may also have to open and rebuild the msi itself.
Other Options
Whilst I summon up the courage to do this, what other options are there?
With some careful archive extraction, you can simply load up the various solutions that come with the Mobile Client Software Factory, in Visual Studio 2005. By doing this, you can still see, manually compile and run all the code that makes up the demos, and sample application blocks. This at least lets you understand the architecture and code design patterns used. I managed to get all the examples running, but you may also have to get the AdventureWorks SQL database built and deployed however. What you don't get is all the project templates to create new mobile solutions and the ability to create Guidance Packages for mobile solutions. This is a shame, as that is kind of the point of trying to install the Factory originally!
If registry hacking holds too much fear for you, then you could always choose to deploy the Mobile Client Software Factory on a 32-bit Windows (Windows XP or Vista) virtual machine. I've run this previously without issue on 32 bit Windows XP, so it should run just fine. The only issue you may have is difficulties deploying to a physical mobile device, as virtual machines often have difficulty emulating USB or serial connections that correspond to the port the device is physically connected to.
Sadly there is no word yet from Microsoft on when a workable 64 bit version of the Mobile Client Software Factory will emerge.
Get Involved With The Next Version...
In the meantime, you may want to take a look at a more community orientated effort called Mobile Client Software Factory v.Next on the CodePlex site. CodePlex is a developer community site run by, but not branded by Microsoft. The v.Next project has been set up to continue the previous work done on this by the Microsoft Patterns and Practices Group. It takes the existing factory source code and allow it to be enhanced. Hopefully over time, this will allow the wider technical community to get involved and produce new releases of direct benefit to their own mobile application development. If you are interested, all you have to do is register at the site.