The full build and AKU version of a device is shown on the Start > Settings > System > About screen, however what if you want to determine the version from your code. Well starting with Windows Mobile 5.0 there is now a registry key which holds the AKU version e.g.
RegistryKey kAku = Registry.LocalMachine.OpenSubKey(“SystemVersions”);
string akuVersion = kAku.GetValue(“Aku”, “”);
kAku.Close();
This version will include a leading period so for example if the string is “.0.1.1” as on the current JasJar ROM the device has AKU 0.1, if it reads “.1.1.0” as on the current K-Jam ROM you have AKU 1.1. As far as I’m aware all shipping devices will have at least 0.1 as some fixes were implemented between RTM in May 2005 and the first shipping devices released later in the year. If your version is “.2.x.x” then you are a very lucky bunny indeed!
Whilst Windows Mobile 2003 had a similar concept of periodic AKU updates throughout it’s lifetime this registry key is not available, nor is the AKU version displayed on the About dialog, only the Build number is displayed.