Determine the Platform in .Net Compact Framework 3.5

.Net CF 3.5 introduces the SystemSettings.Platform property in Microsoft.WindowsCE.Forms namespace which provides you the platform of the device the code is executing on. The property is of type WinCEPlatform  enumeration which contains the members

  • WinCEGeneric
  • PocketPC
  • Smartphone

 The surprising bit is that since Windows Mobile 6.0, we have moved to the new taxonomy where -

  • Windows Mobile for Smartphone = Windows Mobile Standard (download the Windows Mobile 6 Standard SDK)
  • Windows Mobile for Pocket PC = Windows Mobile Classic (download the Windows Mobile 6 Professional SDK)
  • Windows Mobile for Pocket PC Phone Edition = Windows Mobile Professional (download the Windows Mobile 6 Professional SDK)

So, I'm baffled why this new enumeration is causing confusion by using the old naming conventions!