Development
How to disable “Unsigned Prompt Policy” on Windows Mobile?
Many Windows Mobile (Pocket PC) devices ship with one-tier security configuration enabled. That means if an unsigned application is started, then the user is prompted whether to allow the unsigned application to run or not. If the user based on his/her judgment allows the application to run, the application runs in privileged mode whereby it…
Read MoreHow to get process id and thread id from a Window Handle in .NET CF?
Specify the namespace for doing P/Invoke stuff i.e. calling Win32 API functions from managed code. using System.Runtime.InteropServices; GetWindowThreadProcessId Win32 function retrieves the identifiers of the process and thread that created the specified window. Here is how we declare GetWindowThreadProcessId for use in managed code (c#). [DllImport(“coredll.dll”)] private static extern uint GetWindowThreadProcessId(IntPtr hWnd, out uint lpdwProcessId);…
Read MoreWriting “Hello World” program for Windows Phone 7
Windows Phone 7 (WP7) is a cool new mobile platform from Microsoft. Developers can use Silverlight, XNA Framework and of course .NET compact framework for developing applications for WP7. What do you need To get started, download and install the following tools on your Windows 7 or Vista PC. http://www.microsoft.com/downloads/details.aspx?FamilyId=2338b5d1-79d8-46af-b828-380b0f854203&displaylang=en Installation includes Visual Studio 2010,…
Read MoreHow to display Settings screens or Control Panel Applets in Windows Mobile?
Windows Mobile Control Panel applets are normal dlls renamed with special extension .cpl. They are actually loaded by ctlpnl.exe process. Following code snipped is what you need if you want to show a Control Panel applet from your program. This way you make it easy for your user to change desired settings, without any “complex”…
Read MoreNo Application.StartupPath in .NET CF! There is a solution though…
Too bad there is no straight-forward way in net CF for an application to determine its folder path from where it was launched. But following code works just fine. string assembly = System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase; string currentFolderPath = System.IO.Path.GetDirectoryName(assembly); Enjoy… Share this:
Read MoreSimulating key presses in your program with keybd_event function
Out of need or curiosity you might want to know how to send key presses from your native application. The core of the solution involves calling keybd_event() function which has the following prototype. VOID keybd_event(BYTE bVk, BYTE bScan, DWORD dwFlags, DWORD dwExtraInfo); bVk is the virtual-key code of the character. bScan is the hardware scan…
Read MoreDetermining IP Address of a Windows Mobile device
Code to determine IP addresses of adapters on a Windows Mobile device, using IPHelper APIs. Add Iphlpapi.lib to linker settings. #include “Iphlpapi.h” PIP_ADAPTER_INFO pinfo = NULL; ULONG OutBufLen = 0; DWORD dwRet = GetAdaptersInfo(NULL, &OutBufLen); if (dwRet == ERROR_BUFFER_OVERFLOW) { pinfo = (PIP_ADAPTER_INFO)malloc(OutBufLen); dwRet = GetAdaptersInfo(pinfo,&OutBufLen); while (pinfo != NULL) { if (dwRet==ERROR_SUCCESS) { PIP_ADDR_STRING…
Read MoreProgrammatically display system tray icon on Windows Mobile
As a Windows Mobile user you would have seen some icons near to the bottom right corner of the Today screen. These icons give users ability to easily launch the application or show an menu with more choices. This post discusses the steps and code to put your own icon in the system tray. I…
Read MoreDebugging CeRAPIInvoke Calls
RAPI (Remote API) dlls are loaded by rapiclnt.exe on the Windows Mobile device when CeRapiInvoke API is called by the desktop application. CeRapiInvoke is a general-purpose API to remotely execute a function on a Windows Mobile device that is connected to the desktop over ActiveSync. To debug your RAPI dll, do the following. 1. Launch…
Read MoreCreate full screen application in .Net CF
Applications can use the screen real estate to their benefit by running in full screen mode. If you are developing your application in .NET CF, there are 2 ways to make it full screen. In Code Put the following code into your form’s Load() method like below. private void Form1_Load(object sender, EventArgs e) { this.FormBorderStyle…
Read More