Skip to content

Garbage Collection in Windows Mobile and Low memory conditions

Garbage collector is a piece of code responsible for allocating and freeing unreferenced objects in a managed application. Garbage collection operation is invoked whenever: the application calls GC.Collect() method CLR cannot allocate memory for an object the application loses focus and goes to the background the system sends WM_HIBERNATE message to the managed application If…

Read More

How to get information about softwares installed on Windows Mobile devices?

Best method is to ask the configuration service provider (CSP). Step 1: Add Reference to Microsoft.WindowsMobile.Configuration Step 2: Add the following statements at the top of the c# code file. using System.Xml; using Microsoft.WindowsMobile.Configuration; Step 3: Prepare a csp string (xml format) and pass it to ProcessConfiguration method of ConfigurationManager. Return value is the xml…

Read More

How 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 More

No 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 More