Getting rid of annoying prepaid balance notification on windows mobile phones
USSD (Unstructured Supplementary Service Data) protocol is used by GSM network to send data to a phone over a real time connection. One of the most common usage is network provider sending back prepaid account balance notification after every call, SMS and data connection. On windows mobile phones, this notification comes up in a balloon at top of screen with a loud and annoying notification sound.
In case you dont bother for these notifications and want to get rid of the annoying sound after every call, set the following registry
[HKEY_LOCAL_MACHINE\ControlPanel\Phone]
"SuppressUSSD"=dword:00000001
This will disable all USSD messages popping up on screen. Some network specific commands (mostly starting with # or *) which brings back a notification or a menu will also not work after this change.
Another alternative is to just disable the notification sound associated with USSD messages. This can be done using registry
[HKEY_CURRENT_USER\ControlPanel\Sounds\USSDBuzz]
"Sound"="*none*"
This will allow the USSD messages coming up on the screen, but no sound.
Both the above changes might require (depending on OEM implementation) a reboot.
PS: In case you dont have any clue how to edit registry on your phone, there are quite a few registry editors for windows mobile available. This is one of them.
How to change file extensions in Windows Mobile?
Ever wondered how to change file extensions on your Windows Mobile phone? One thing is for sure: you cannot use the builtin file explorer program. It does not even show the file extensions let alone change them.
Well. there are two solutions:
- ActiveSync: Connect the device to the PC over ActiveSync and browse to the file and folder of your choice. Right-click on the file name and select Rename to modify the filename or its extension.
- Use third-party freeware tool such as Total Commander. You can do much more than what the builtin file explorer provides. Other than changing file extensions, you can change file attributes (Readonly, Hidden, Archive, System) and file associations as well.
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:1Note: Create the above registry entry if it does not already exist.
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....
Writing “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.
Installation includes Visual Studio 2010, Expression Blend, Windows Phone Emulator, XNA Game studio along with all the documentation required for writing your next great app.
Note that if Visual Studio 2010 Professional or above is already installed on the PC then only an Add-in for Windows Phone development is installed rather than complete installation of Visual Studio 2010 Express Edition.
To familiarize with the development environment its better to first develop a simple Silverlight application.
Create Hello World Project in SilverLight
1. Launch Visual Studio and Select File -> New Project command.
2. Select SilverLight for Windows Phone as template and Windows Phone Application as project type.
3. Specify HelloWorld as project name and Click OK button.
4. Wizard will create all the necessary files as the foundation for our HelloWorld application.
What Wizard generates
Most important files are generated by the wizard are:
1. MainPage.xaml : Default page with some UI element.
2. App.xaml : This file is used to declare shared application resources like colors, brushes, fonts and various style objects. The code-behind file app.xaml.cs is used to handle global application level events like Application_Startup, Application_Exit and Application_UnhandledException.
Building the Project
Since this is the first application built with the newly installed dev environment, its good to build the default project to rule out any installation problems. Right-click on the Solution in the Solution Explorer and Select Build command.
The build is successful if you will see the following message in the output window.
"========== Build: 1 succeeded or up-to-date, 0 failed, 0 skipped =========="
All is good at this stage. Go to Windows Explorer and browse to .\HelloWorld\HelloWorld\Bin\Debug folder and you will find HelloWorld.xap which is your actual compiled and compressed Silverlight application.
Lets enhance the program by adding "Hello World" functionality :).
Adding Hello World Stuff
1. Select "My Application" text block in the design view or in XAML view and change it to say, "42Gears".
2. Select "page title" text block and change it to "Hello World".
Build the project and a new HelloWorld.xap file will be generated.
Running Hello World Program
Now you are ready to launch the application. Press F5 to start debugging or Ctrl-F5 to Start without debugging. Windows Phone 7 emulator will be launched and HelloWorld.xap will be deployed and your first application will start running on the emulator.
For the first time it will take sometime for the emulator to start. Once its running, you can hit F5 or Ctrl-F5 to quickly deploy and run your application.
Well.. thats all for the HelloWorld application for Windows Phone 7. Future posts will involve more advanced topics. Stay tuned!
Manage your Mobile Software IT Assets with SureSAM
42Gears is developing a Software Asset Management (SAM) tool to help companies manage, allocate and audit software applications installed on their Windows Mobile handheld devices. More information about SureSAM is available here.
Locking down WM 6.5 devices with SureLock
Latest WM 6.5 user interface is remarkably different than the earlier versions. Especially the location of Start menu button and the Start menu (Honeycomb look) itself. Latest version of SureLock Studio handles these differences nicely. SureLock now fully supports WM 6.5 devices. Check out the latest release.
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.
Can Microsoft get back its Mojo with Windows Mobile 7?
There have been speculations as to whether Microsoft will remain an important player in the mobile phone market with their Windows Mobile operating system. Numerous news articles and blog posts have “declared” the imminent death of Windows Mobile. This article lists a few reasons why these speculations might not eventually turn out to be true.
It is generally agreed that Windows Mobile has problems. We can compare it to Windows Vista which was not accepted very well by the market. Microsoft came back with Windows 7 which has turned out to be successful even after Vista’s debacle. They have learned from the problems and fixed them in Windows 7. Though the desktop and mobile platforms belong to different worlds, we must recognize the approach Microsoft took. The point is; Microsoft can certainly fix what is currently broken in Windows Mobile.
Microsoft rules desktop OS market with over 90% market share and it will make sense if Microsoft uses it to their advantage in mobile space as well.
Windows Mobile also rules the rugged handheld device market. Companies have tried various alternatives, including free “Linux” and failed. They went back to using Windows Mobile based devices for their day-to-day business activities related to mobility. For anything more than email access, companies still prefer Windows Mobile.
Windows Mobile is built on a solid platform. People have been cribbing about its “bad” and outdated “look and feel”. But this “look and feel” was a well-thought-of decision when Windows Mobile or Pocket PC (as it was called earlier) was designed. Microsoft did not want anyone to put any effort in learning how to use their new operating system. Infact, almost no learning was required if you already knew how to use Windows on the PC. They added a Start button on Windows Mobile taskbar!
WM 7 screenshots are available on the internet like here. Not sure if they are true, but if they are real, then surely MS is up to something great. The release has been delayed and MS had to release a stop-gap WM 6.5 version which has received fairly good reviews. WM 6.5 might hold-off the attack till WM 7 starts the counter attack.
iPhone and new devices running Android have tasted initial success by having a nice “look and feel” and jazziness. Their next challenge would be to get better integrated with the desktop environment, where Windows has complete domination. You think its going to be easy! Nope. That is where they will struggle. Microsoft has already solved that problem; the only thing they have to do is to “modernize” the look and feel of their operating system (WM) and they will be good.
It remains to be seen if Microsoft will really get their Mojo back with the release of WM 7. Until then let’s see what the industry analysts write about Microsoft’s departure from the mobile arena.
42Gears develops mobile device management tools for enterprises. Read more information about our products here.
Introducing AirLink Manager - A Mobile Device Management Tool
Companies are increasingly using mobile devices for variety of purposes such as for providing email access to employees or for running business applications. One of the biggest challenges faced by IT departments is to manage these devices when they are out in the field in the hands of the users. It's just too costly (in terms of time and money) to physically bring the devices to the IT people for maintenance or troubleshooting.
Solution to the above problem is to use a Remote Mobile Device Management (RMDM) tool like AirLink Manager. AirLink currently supports only Windows Mobile devices. It consists of two components: AirAgent which runs on the mobile devices and is responsible for performing jobs sent by the AirLink Manager, a desktop tool operated by the IT Admin.
AirLink Features:
* Remote Software Distribution (CAB Installation)
* Remote Program Execution
* File Transfer
* Device Health Check (Memory, Battery etc.)
* Messaging (Directly push messages to end-users)
* Remote Reset
* Device tracking with GPS (Upcoming...)
* Remote Wipe (Upcoming...)
* Remote Control (Upcoming...)
We have planned a lot more features in the future releases of AirLink. Check out the preview release.