Simulating GPS data on the DeviceEmulator or a Windows Mobile 5.0 device

This MSDN article,, lists the registry settings that redirect the GPS intermediate driver so it reads NMEA strings from a file instead of from a GPS device.  Very handy if you want to test a GPS-aware application in various parts of the world! Barry


DeviceEmulator and virtual battery

I’m looking at implementing a virtual battery in the next DeviceEmulator release.  How much control do you need over the virtual battery? The straightforward way to emulate a battery is to have two controls: Is the emulated device on battery or A/C power? What is the battery charge as a percentage? With those, you can…


Detecting whether your application is running on the DeviceEmulator or not

The best way for apps to detect if they are running on the Device Emulator is to use this snippet of code:WCHAR wszMachineName[128]; SystemParametersInfo(SPI_GETOEMINFO, sizeof(wszMachineName), &wszMachineName, 0); On the DeviceEmulator, it will return with wszMachineName set to “Microsoft DeviceEmulator”. For a more complete code sample, follow the MSDN article:  


PDC 2005 DeviceEmulator talk is now online

Michael Swanson has announced via his blog ( that the PDC05 content is online, free, for the next six months, at Amit Chopra and I did a talk about the DeviceEmulator, both about the current emulator that just shipped Visual Studio 2005, and about directions we’re thinking about for future releases.  Navigate to “Tools and Languages” in…

Fake phone calls in the DeviceEmulator (PDC 2005 followup)

After our talk on the Device Emulator, a number of people asked me about the phone numbers I used in my demo of Windows Mobile 5.0.  I used one number to send an SMS message the looped back, and another to test a busy signal from the dialer app. The Windows Mobile 5.0 Phone Edition…


SaveState Files and "Error: The current VMID is in use. Wait for the other application to exit."

If you launch the emulator by hand with savestates enabled (ie. “DeviceEmulator.exe nk.bin /s MySaveState.dess”), then your savestate file may fail to launch later, with an error “Error: The current VMID is in use. Wait for the other application to exit.”.  This can happen if you launch another emulator instance from the command line then…

Naming and Identifying DeviceEmulator Virtual Machines

If you launch the DeviceEmulator by hand, those instances show up in the Device Emulator Manager in the “Others” node as GUIDs.  They aren’t exactly user-friendly, but they are the most reliable way of uniquely identifying an emulator instance. There are two things you can do to help identify running emulator instances: Right-click on a…

BarryBo returns to the DeviceEmulator

After spending the past several months helping revamp the way Developer Division authors our installer, I have returned to the DeviceEmulator and Visual Studio for Devices.  In my absence, VladF took good care of the emulator codebase and has been a prolific responder to newsgroup posts. I’m looking forward to going to the PDC this…