In Windows Phone 7 , the developers can take advantage of the class DeviceExtendedProperties to get the unique id of the device .
The DeviceExtendedProperties which is part of the Microsoft.Phone.Info assembly also can be used to retreive the total memory , memory usage ,Device Name , Firmware version , hardware version etc and few other device information .
Below is a sample sourcecode that lets you get the uniqueid of the Device . It uses the extended device property list “DeviceUniqueID” to retreive the unique ID
object DeviceUniqueID; byte[] DeviceIDbyte=null; if (DeviceExtendedProperties.TryGetValue("DeviceUniqueId", out DeviceUniqueID)) DeviceIDbyte = (byte[])DeviceUniqueID; string DeviceID = Convert.ToBase64String(DeviceIDbyte); MessageBox.Show(DeviceID);
You should add the below entry to your WMAppManifest.xml file of your WP7 Project to actually get the Unique ID
When the above entry is missing in the xml file , you will get an UnauthorizedAccessException or Argument null Exception “Value can not be null.”
Reference : Device Information for Windows Phone