Published February 22nd, 2015
The following are the steps I used on Microsoft Windows 7 Professional with Service Pack 1 in order to develop and debug Windows Mobile 6 and Windows Mobile 6.5 applications requiring network or Internet access using Visual Studio 2008. Although I have not yet tested these steps outside of Windows 7 I see no reason why these steps would not work on later versions of Microsoft Windows including Windows 8 and Windows 8.1.
Update: February 23rd, 2015
I was unable to get this method to work properly on Windows 10. Another method I was able to get working on Windows 10 can be found here.
Before installing Visual Studio 2008 you may want to install .NET Framework 3.5 by going to the Control Panel then selecting "Programs" > "Programs and Features" > "Turn Windows features on or off". Once in the "Windows Features" window check the box next to ".NET Framework 3.5 (includes .NET 2.0 and 3.0)", click "OK" and allow the installation to complete. After .NET Framework 3.5 has been installed install Visual Studio 2008 as you normally would. Nothing special should have to be done to complete this installation.
Next you will need to install the Windows Mobile Developer Tools. If you wish to develop only for Windows Mobile 6 you will only need the fisrt file linked below. However if you wish to develop for Windows Mobile 6.5 you will need to install both files linked below. Make sure to install the Windows Mobile 6 Professional and Standard Software Development Kits Refresh before installing the Windows Mobile 6.5 Developer Tool Kit.
When downloading and installing the SDK and DTK be sure to select the proper files either the Professional or Standard versions depending on the platform you wish to target for development.
Download but do not install Virtual PC 2007 SP1 being sure to get the installer proper depending on your operating systems architecture either 32bit or 64bit. Virtual PC 2007 SP1 can be downloaded from Microsoft Download Center.
Once downloaded we will extract the MSI files from the executable file you have downloaded then extract the files contained within the MSI file to a directory on your computer. You will do this by following these steps.
msiexec /a Virtual_PC_Install.msi /qb TARTGETDIR=C:\vpc
Now that we have extracted the files making up Virtual PC 2007 SP1 we can install the drivers. In your control panel go to The "Network and Sharing Center. Once in the Network and Sharing Center open "Change adapter settings" displayed to the left of the window.
Right click on the adapter which is connected to the Internet that you wish to use and click on "Properties". Next you will need to click on the button titled "Install..." in the properties window. then select "Service" from the list then click on the "Add..." button.
Once the "Select Network Service window opens click on the button named "Have Disk...". Depending on your systems architecture choose one of the following locations to load the service driver from and click "OK".
C:\vpc\Program Files\Microsoft Virtual PC\Utility\VMNetSrv\
C:\vpc\Program Files\Microsoft Virtual PC\Utility\VMNetSrv\x64\
From the list of network services displayed select the one named "Virtual Machine Network Services" and click the "OK" button to finish the installation of the virtual machine network service.
Open a smart device project in Visual Studio 2008 which requires network access which is ready to be debugged.
The creation of a Windows Mobile application to test the set up covered here is beyond the scope of this article. However If you would like to obtain a project to use for testing you can check out PingNG which is available on code.google.com.
You are now ready to deploy your application to the mobile device emulator from within Visual Studio 2008. To do so simply start debugging the application within Visual Studio 2008. If you may get a window titled "Display Handheld" simply select the device you wish to use from the list. Once you have done this your application will be compiled, sent to the mobile device emulator, and then executed. You should now see your application running in the mobile device emulator and access to your network and\or the Internet should be available as well for your application to use.