Sprint PPC-6700 Missing Device ID

  • Thread starter Thread starter Botia
  • Start date Start date
B

Botia

I have run into an issue with the Sprint PPC-6700 Pocket PC phones.
They all appear to missing a Device ID. Using IOCTL_HAL_GET_DEVICEID
they return a GUID of all 0's. Using GetDeviceUniqueID they all return
the same 20 bytes.

Has anyone found a way to get a unique ID for these devices?
 
I have just implemented such a thing for my app, though not specifically for
the Sprint 6700.

For earlier operating systems than WM5, the call to the DeviceID via
IOCTL_HAL_GET_DEVICEID did give a DeviceID in most cases but was dependent
on whether the OEM had supplied one for that device.

Since IOCTL_HAL_GET_DEVICEID is a kernel call in WM5, it is now privileged
and so only apps that run in privileged mode can successfully call it. WM5
has provided another function, GetDeviceUniqueID(), so that a wider number
of apps can get a unique DeviceID, and do not specifically have to be
running in privileged mode.

The design for a unique ID has changed with this new function. Your app now
passes a unique identifier, more than 8 characters, and it will always
return a 20-character unique number for your app even if the device is hard
reset. Another app would pass yet another app identifier to the same device
and get a different GetDeviceUniqueID(). So, for each app, a unique DeviceID
is now given. I had to modify my app for the way I get the DeviceID if my
app was loaded into a WM5 device, since it is unsigned at the moment.

While this new function seems to work on other WM5 devices for my app, I
cannot say whether it specifically works on the Sprint 6700 but since it
uses WM5, I would expect it to work in the same way.

Regards,
Neville Lang
 
I can say that GetDeviceUhniqueID() does work on the Dell's and does
not work on the PPC-6700. They all return the same 20 byte "unique" ID.
 
Back
Top