When Orange released their AKU 2.0 ROM for the C600 it introduced a much tighter security policy. A previous loophole for changing security policies involving a signed registry editing application was closed by black-listing the app. Also the online unlocking page from the Orange Developer program doesn’t recognise a C600 IMEI. Luckily there is a process in […]
Category: Windows Mobile
This recent article discussed one of the ways you can use XML provisioning data – through a cab file installation. You can also pass the XML to DMProcessConfigXML or ConfigurationManager.ProcessConfiguration in the managed world. But how about creating the XML? Well you could use notepad and code it all by hand as a worst-case-scenario. The […]
Contact.WebPage
The Managed APIs in Windows Mobile 5.0 expose the Contact.WebPage as a Uri. The problem with this approach is that the user forms are free text and you can enter anything into this field. Probably 9 times out of 10 you’ll enter an address such as http://www.peterfoot.net And because the managed API passes this to […]
GetDeviceUniqueID For VB
To complement the C# version posted Here, here is a working VB translation:- <System.Runtime.InteropServices.DllImport(“coredll.dll”)> _Private Shared Function GetDeviceUniqueID(ByVal appdata As Byte(), ByVal cbApplictionData As Integer, ByVal dwDeviceIDVersion As Integer, ByVal deviceIDOuput As Byte(), ByRef pcbDeviceIDOutput As Integer) As IntegerEnd FunctionPrivate Function GetDeviceId(ByVal appData As String) As Byte()Dim appDataBytes As Byte() = System.Text.Encoding.ASCII.GetBytes(appData)Dim outputSize As Integer […]
Any Port in a Storm
A user posted an important observation on the Bluetooth COM support in Windows Mobile 5 here on the microsoft.public.pocketpc.developer newsgroup. The problem is that while the system allows you to create virtual COM ports for all your paired devices which support Serial Port Profile, most of the time this will fail because the COM port […]
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 […]
This bug affects both managed and native developers working with the Windows Mobile 5.0 SDK. Native Due to an error in snapi.h the location of the registry key used to indicate if a hardware keyboard is present is incorrect:- ////////////////////////////////////////////////////////////////////////////////// KeyboardPresent// Gets a value indicating whether a keyboard is attached and enabled.#define SN_KEYBOARDPRESENT_ROOT HKEY_LOCAL_MACHINE#define SN_KEYBOARDPRESENT_PATH […]
Luis Cabrera has posted the details of a bug identified in the Talk method to the Windows Mobile Team blog. The workaround (see the original post) is to append a null character to the end of your dial string. Note: this bug doesn’t affect InTheHand.WindowsMobile.Telephony.Phone.Talk.
The ItemId type is introduced to the managed APIs to represent either a POOM Oid (int) or MAPI ENTRYID (16/14 bytes). It doesn’t directly expose the underlying data but there are a couple of useful behaviours:- ItemId constructor accepts an int to create an ItemId from an existing known Oid value For POOM items (Appointment, […]
PocketOutlook Native Managed Map
Windows Mobile 5.0 introduces a managed API which wraps both POOM and a subset of CEMAPI (enough to send an Email / Sms). The table below is designed to show how the managed objects map to the interfaces which will be familiar to seasoned POOM developers. It also shows those parts of POOM which are […]
