I am really excited about The Race to Market Challenge, sponsored by the Windows Mobile team. Nothing motivates me like a challenge that promises great prizes and glory - especially when the prize is a Microsoft Surface!
If that’s not enough to get you pumped up about developing a killer application, what will?
I’ve decided to build a mobile application myself (two, actually), and consequently needed to make sure that I had my development environment setup appropriately. There are quite a few steps required in order to prepare your machine for Windows Mobile development, but it’s not too bad.
I am running Windows 7 RTM 64 bit with Visual Studio 2008 Team Suite. Your mileage may vary if you’re running a different O/S or version of Visual Studio. That said, I strongly recommend you upgrade to Windows 7 and insist on Team Suite - there are no substitutes for good tools.
Here are the steps I took in order to setup my machine:
Download and install Microsoft Windows Mobile Device Center 6.1 Driver for Windows Vista (64-bit). At the moment it doesn’t appear as if there’s a specific version for Windows 7. This Windows Vista version seems to work just fine.
Download the Windows Mobile 6 SDKs and 6.5 tool kit. Be sure and note the different terminology for the different phones - evidently there are distinctions between Windows Mobile Standard (previously Windows Mobile for Smartphone) and Windows Mobile Professional (previously Windows Mobile for Pocket PC).�
* Install [Windows Mobile 6 Professional and Standard Software Development Kits Refresh](http://www.microsoft.com/downloads/details.aspx?FamilyID=06111a3a-a651-4745-88ef-3d48091a390b&displaylang=en). * Install [Windows Mobile 6.5 Developer Tool Kit](http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=20686a1d-97a8-4f80-bc6a-ae010e085a6e).
* First install [SQL Server Compact 3.5 SP1 for Windows Mobile](http://www.microsoft.com/downloads/details.aspx?FamilyID=FCE9ABBF-F807-45D6-A457-AB5615001C8F&displaylang=en). This is required for using the Data Access Block, Disconnected Agent, and Subscription Block. * Install the [Mobile Application Blocks](http://mobile.codeplex.com/) through the [Community Drop Installer (05-21-2009)](http://mobile.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=27708).
* Install [Microsoft Windows Mobile 6 Consumer Solution Accelerator](http://www.microsoft.com/downloads/details.aspx?FamilyID=ACB764DF-EF79-4B96-A47F-6C7D916473E5&displaylang=en). This is a showcase mobile consumer application that assists a user traveling to a meeting. Definitely worth reviewing to harness best practices. * Install [Windows Mobile Line of Business Solution Accelerator 2008](http://www.microsoft.com/downloads/details.aspx?FamilyId=428E4C3D-64AD-4A3D-85D2-E711ABC87F04&displaylang=en). This is a supply chain application that uses the .NET Compact Framework 3.5, SQL Server Compact 3.5, and has a great deal of useful documentation.
A lengthy process, but not too difficult.
Once I completed the setup, I wanted to confirm that I could actually build and emulate an application. I decided to do this very quickly by creating a “Hello Windows Mobile!” application and deploy to one of the Windows Mobile 6.5 emulators.
Here are the steps I took:
* I Create a new smart device project. This will create a new project and give you a blank windows mobile form. * Open up Visual Studio, and click **File -> New -> Project**. * Select **Visual C# -> Smart Device -> Smart Device Project**. Name it whatever you like. * From the New Smart Device Project screen select "Windows Mobile 6 Professional SDK" for your target platform and choose "Device Application".
From the Toolbox, drag a Label control onto the form and change the text to “Hello Windows Mobile!”
Debug the project by clicking F5 (or Debug -> Start Debugging).
* You will be prompted to choose an emulator. I chose the USA Windows Mobile 6.5 Professional VGA Emulator under **Datastore -> Windows Mobile 6 Professional SDK**. * Here's what it looks like - very cool:
* After a few moments, your applications will get deployed to the device. It may take a few minutes the first time as all the necessary pieces are deployed. Once it has finished, you should see your application deployed. It will look like this:
In the end, it’s really exciting to have a fully functional development environment that can target all the Windows Mobile 6.X platforms. Lots of potential for building applications that have a huge install base!
I really hope that you found this useful. I strongly encourage you to sign up for the Race to Market Challenge and start building some great applications.