42Gears Speaks
16Mar/110

SureMDM now supports Windows CE 5.0 and 6.0 devices

Today we introduce management support in SureMDM for Windows CE based devices (both 5.0 and 6.0). There are thousands of devices that can benefit from this development. If you have a combination of Windows Mobile and Windows CE devices, you may well look at SureMDM for your device management needs.

You can register for a free 15-day trial of cloud version of SureMDM. You can actually evaluate the solution in minutes as there is no complicated installation of server software required.

SureMDM: Mobile Device Management for Starters and Experts

Go to Home


15Oct/100

Understanding Windows Mobile Application Security Policies

Execution of programs on Windows Mobile devices depends on the application signatures and their permission levels. Devices can be configured to the following security settings.

  • Security off
  • Unsigned applications are allowed to run without any prompt and they can access privileged APIs, or protected areas of the registry and file system.

  • One-tier prompt
  • The device prompts the user before executing unsigned applications. Once the user allows the execution, application has no restriction on permissions. This is usually safe if you trust the application developer or vendor.

  • Two-tier prompt
  • The device prompts the user before executing unsigned applications. If the user allows an unsigned application to execute, the application executes with normal permissions but cannot access privileged APIs, or protected areas of the registry and file system. Even the signed applications cannot access the privileged resources unless they are signed with a certificate in the privileged certificate store.

  • Mobile2Market locked
  • Only signed applications are allowed to execute. Unsigned applications don't prompt the user when executed. Permissions given to signed applications depend on the certificate with which they were signed i.e. signed with certificate from the privileged certificate store or the normal certificate store.

42Gears has recently released SureCop, an Anti-theft software for Windows Mobile phones.To learn more about SureCop for Windows Mobile and how it can help you secure your mobile phone, please visit the product website http://www.surecop.com.

Go to Home


21Sep/100

Our new product: SureCop Anti-Theft Security and Location Tracking Software for Windows Mobile phones

42Gears has released SureCop 1.0, a new anti-theft security and location tracking solution for Windows Mobile phones. SureCop provides three useful features to safeguard your lost or stolen phone: Remote Lock, Remote Wipe and Location tracking on map. SureCop also has features for everyday personal use, such as sharing personal location with friends and family members.

Smartphones have made life easy and productive. But these benefit comes with the risk of putting our personal and sensitive data vulnerable to phone loss.

Studies have shown that a mobile phone is 15 times more likely to get stolen or lost than a laptop computer. With SureCopsmartphone owners can take proactive actions which can help in recovering the lost/stolen phone or at-least safeguard the private data from falling into wrong hands.

Remote Lock feature of SureCop can be activated by sending a simple SMS message from a partner phone. Phone can then be unlocked only by entering the correct password. Lock also gets activated automatically if someone changes the SIM card. New phone number and IMSI details are sent to the partner phone which can be used to identify the thief.

Remote Wipe feature protects owner's privacy by erasing all data on the mobile phone's main memory and external SD card. Everything including pictures, emails, text messages, contacts and other user data is wiped and the phone goes back to factory default state.

Remote Location tracking SMS command can help in locating the lost/stolen phone on Google maps. It works even on Smartphones without built-in GPS.

All these remote commands can be invoked by sending a simple SMS from a partner phone.

Apart from the above anti-theft security features, SureCop also has interesting features for everyday personal use. e.g. Users can conveniently send their GPS location to their family and friends. With Send My Location feature, a SMS message with map url is sent to the recipients which they view on their phone's browser.

SureCop is completely unobtrusive with very small memory footprint. SureCop doesn’t drain battery as it runs only when certain events occur.

SureCop Manager is a free tool which helps easily manage multiple smartphones. SureCop Manager is particularly useful for enterprise users who need to manage large number of phones.

Trial version of SureCop for Windows Mobile is available at http://www.surecop.com.

Go to Home


29Jun/100

C# code to soft reset a Windows Mobile device

Here is the C# code to soft reset a Windows Mobile device (using P/Invoke)

[DllImport("coredll.dll", SetLastError = true)]
static extern int SetSystemPowerState(string psState, int StateFlags, int Options);

const int POWER_FORCE = 4096;
const int POWER_STATE_RESET = 0x00800000;

private void SoftReset()
{
SetSystemPowerState(null, POWER_STATE_RESET, POWER_FORCE);
}

Go to Home


19Jun/100

Microsoft to continue support for Ruggedized Handheld market

Ruggedized handhelds are a class of mobile devices that are designed to run mission critical applications while withstanding the harsh environments. Several OEM like Motorola/Symbol, Intermec, Psion Teklogix, Honeywell have been building ruggedized handhelds for several years now. Most of these devices are based on Micrsoft Windows CE and Windows Mobile operating systems. Recent whitepaper from VDC Research says that Microsoft has 87% share in this market. All these OEMs together shipped around 2.3 million devices in 2009, which is projected to reach 4.3 million by 2014. Besides that there already are around 12 million ruggedized devices in use.

Since Windows Phone 7 has been announced there was a growing concern among OEMs regarding future support from Microsoft for its existing Windows CE (latest version 6.0) and Windows Mobile (latest version 6.5) platforms. Note that Windows Phone 7 is a very different platform with almost no similarity with the CE and Windows Mobile and is targeted towards consumers and to lure back iPhone users :) .

Enterprises and Consumers have different needs and both are important. Microsoft has started a new program Windows Embedded Handheld to protect the existing enterprise investments and to continue to releasing newer mobile platforms with minimum porting requirements.

Microsoft's commitment to the future of enteprise mobile devices will be a welcome news for OEMs, System Integrators, ISVs and Enterprise customers.

Go to Home


19May/100

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 string which contains all currently installed softwares on the device.

private void ListInstalledSoftwares()
{
string cspString = "<wap-provisioningdoc><characteristic-query type=\"UnInstall\"></characteristic-query></wap-provisioningdoc>";
XmlDocument xmlResult = null;

// Use CSP to get list of installed applications
try
{
XmlDocument configDoc = new XmlDocument();
configDoc.LoadXml(cspString);
xmlResult = ConfigurationManager.ProcessConfiguration(configDoc, false);
Debug.WriteLine(xmlResult.InnerXml);
}
catch (Exception ex)
{
Debug.WriteLine("Failed to get list of installed applications. CSP failure. [Exception: " + ex.Message + "]");
}
}

Go to Home


14May/100

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 can access all system APIs and protected registry keys.

Now this feature can be very annoying during development. So rather than signing the executable the developer can temporarily disable the Unsigned Prompt Policy by making some registry changes.

Steps to disable Unsigned Prompt Policy on Windows Mobile:

  • Use Remote Registry Editor or a third-party tool such as PHM Registry Editor.
  • Set the following registry value to 1 to disable Unsigned Prompt Policy. (Default value is 0).

    ; Unsigned Prompt Policy
    [HKEY_LOCAL_MACHINE\Security\Policies\Policies]
    "0000101a"=dword:1

    Note: Create the above registry entry if it does not already exist.

Go to Home


10May/100

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);

Description:

  • hWnd is the window handle
  • lpdwProcessId stores the process identifier after the method returns
  • return value of the function is the id of the thread that created the window

Calling GetWindowThreadProcessId via P/Invoke:

// Set the hWnd value below with window handle of your interest
IntPtr hWnd = this.Handle;
uint processid = 0;
uint threadid = GetWindowThreadProcessId((IntPtr)hWnd, out processid);

And there you go....


22Feb/100

How 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” navigation.

BOOL ShowControlPanelApplet(int id)
{
TCHAR szParams[32];
SHELLEXECUTEINFO execinfo = {0};
memset(&execinfo, 0, sizeof(execinfo));
execinfo.cbSize=sizeof(execinfo);
execinfo.lpFile=TEXT(“\\windows\\ctlpnl.exe”);
execinfo.lpVerb=TEXT(“open”);
// Id value determines which control applet will be launched
// For e.g. 23 for bluetooth applet
wsprintf(szParams, L”cplmain.cpl,%d”, id);
execinfo.lpParameters = szParams;
BOOL bRet=ShellExecuteEx(&execinfo);
return bRet;
}

The parameter id refers to the control panel applet that you want to show. Below is the table of id values and the corresponding applet names.

Control Panel Applet Id Values

1 Password
2 Owner Information
3 Power
4 Memory
5 About
6 Brightness
7 Screen
8 Input
9 Sounds & Notifications
10 Remove Programs
11 Menus
12 Buttons
13 Today
14
15 Beam
16 Clocks & Alarms
17 Configure Network Adapters
18 Regional Settings
19 Connections
20
21
22 Manage Certificates
23 Bluetooth
24 Error Reporting
25 GPS Settings
26
27 USB to PC

Follow us on Twitter http://twitter.com/42gears


26Nov/090

Feature Checklist of Mobile Device Management tools

Mobile Device Management (MDM) refers to the approaches or solutions used by companies to remotely manage their mobile devices (PDAs, Smartphones, Laptops, Netbooks). Variety of devices involved pose a big challenge for anyone who intends to implement a Mobile Device Management Solution. In fact, a single solution may never fully satisfy the all the requirements. Hybrid solutions (multiple solutions from different vendors doing complimentary tasks) is a common approach that is used to solve this problem.

Here is a checklist of features that a typical Mobile Device Management solution should have:

* Remotely initiated Software Installation
* Remotely initiated Software Un-installation
* Device Inventory tracking (Including Firmware versions and information about various hardware components)
* Software Inventory tracking (Including OS versions and versions of installed third-party applications)
* Backup and Restore of critical business data
* Control user access to certain approved applications and features only
* Physical Device Tracking with GPS (View the device location on a map)
* Remote locking in case of attempts for unauthorized access
* Remote Wipe in case of attempts for unauthorized access
* Remote Control for administrative purposes (Remotely view device screen and perform user actions like mouse clicks or stylus taps).
* Device Health Check (Alerts and manual detection of issues)
* Gather Device Data for Audit purposes (e.g. Call Log Information, Information regarding SMS and Network usage etc.)
* Capability to send Alerts and Messages to mobile users
* Generate Reports

All of the above features can be further classified into various sub-features. That makes it really hard for any one solution to solve the Mobile Device Management problem. 42Gears is also attempting to solve this problem by developing multiple tools such as SureLock Studio, AirLink and WipeMyDevice.

42Gears develops mobile device management tools for enterprises. Read more information about our products here.