Tuesday, December 30, 2008

OpenDialogEx Modified - Now allows you to choose directory in .NETCF

Hi Guys,

 I'm modifying my SmartProtect code to allow my application to choose folders that can be protected. However, currently, .NETCF does not have any FolderBrowserDialog method so there's no way for you to browse folders.

Instead of re-inventing the wheel, I was looking for codes that I can freely integrate and modify to so that it is able to choose folders instead of just files and I saw a post from http://www.mobilepractices.com/2008/02/custom-openfiledialog-implementation.html. (Anyway I've seen Mr. Peter Foot's one but I feel this implementation is cleaner and much more easier to scale)

However, this implementation does not allow you to choose folder so since the author allows us to freely modify the code, I did some modification to allow it to choose Folders instead of just Files. The modified code is here : 


To use this code so that you can filter out the folders, just add :

filter.dialog="(Directory)";

the code will then filter only the directory and it will allow you to select the folders.

Anyway, I've also added a bonus. You can change the title of the form by adding filter.title="Choose a Folder"

Thanks to José Gallardo Salazar for a very good code. 

Friday, December 26, 2008

New Pocket PC Application - Smart Protect

Hi Guys,


I'm releasing a software to the public called SmartProtect. Basically, this software provides the following features :

  1. An Thief or Lost Prevention Software with SMS Auto-Responder and GPS Capability created for Windows Mobile Devices.
  2. When you forget your phone and can't remember where you put it, you can SMS your phone to get the exact location via GPS information if your phone has GPS Capability or approximate location based on Cell Location.
  3. You can SMS your phone for other information such as IMSI, IMEI or even remotely reboot your phone etc.
  4. This software is also equipped with Thief Prevention system which will automatically SMS your partner phone number if the SIM has been changed against the registered SIM. You can register multiple phone numbers as partners.
  5. This software supports registration of Multiple SIM Cards and also registration of Multiple Phone Conctacts as Partners.
  6. When your phone has been stolen, it will automatically SMS relevant information such as IMEI, SIM Card Number or IMSI, GPS Location if supported and Cell Location to your Registered Partner Phone.
  7. It is able to also auto-delete Phone Memory Contacts if the phone has been stolen.
  8. It is password protected and the password is encrypted with AES-Encryption.
  9. Its un-install proof. It requires special procedure to uninstall the protection, so even if you uninstall it, it is still working.

It's still in beta version. You need atleast .NETCF 2.0  for this app to work (which most Windows Mobile has so not to worry).

Note that Cell Location depends on your device. It should be working but the problem is not all devices interfaces with RIL functionality so it may or may not work. What I can confirm is that Asus P525 does not work on cell location (it always return 0). Samsung I780 works perfectly.

Anyway, here are the SMS Commands that you can send to your phone. Note though that the SMS is only accepted when :


  1. The SMS came from a partner phone. (You need to register the phone as a partner phone first).

  2. The password is correct. Password is based on the password saved when you configure your phone for using the SmartProtect application.
  3. When the SMS Command is correct.

The SMS commands syntax is :

::/[command],[password]

example :

::/getGPSLocation,mypassword

The valid commands are :


  • getIMEI - Retrieves the IMEI Number

  • lockMyPhone - makes your phone unusable

  • enableLockPhone - Enable the Lock Mechanism of your Phone. When your phone is stolen, your phone will become unusable.

  • resetPhone - Reboots your phone.

  • deleteContacts -Deletes your mobile phone contacts. It does not delete the SIM Card Contacts.

  • unregisterPhone - Unregisters the sender as a partner phone.

  • disableSecurity - Disables the security mechanism of your phone. This requires restart to take effect.

  • enableSecurity - Enables the security mechanism of your phone.This requires restart to take effect.

  • getIMSI - Retrieves the IMSI Number.

  • alertContacts - Alerts your contacts that your phone has been stolen.

  • getCellLocation - Gets the approximate location based on Cell Tower that your phone has registered to.

  • getGPSLocation - Retrieves the GPS Coordinates.

  • exitApp - When you use getGPSLocation command, this application stays in the memory. This command exits the application. However, this applications will still be activated if any of the command is received.

  • registerPhone - Registers your sender as partner phone number.
  • listCommands - List the commands available for the Software.

The link to download the software is here :  http://forum.xda-developers.com/showthread.php?p=3088296#post3088296

Kindly leave your comments on this page on how else you would want to improve the application, or any bugs you encounter. I've thought of new features already but I won't reveal it. Thanks!!



Wednesday, December 24, 2008

Windows Mobile Development. How to send SMS and call via emulator

Well, this is a tip that will be useful for developers on Windows Mobile World, especially those that are developing SMS Interception software or those who are interested in developing RIL.

Would it be good if, when developing the SMS Interception software or call interception software, to test it out without buying a new phone ? Like maybe sending an SMS on your Emulator to test if your software is able to interecept the sms ?

Well, now its possible. It took me a while to find out but I would like to share with you guys. Windows Mobile 6 SDK (and perhaps Windows Mobile 5) has the facility to allow you to test your software which requires interaction and manipulation of phone calls, SMS or even test your GPRS functionality without incurring cost. This is called a Cellular Emulator. How do we use that ?

Well its simple. Just follow the steps here :

1. Open your Cellular Emulator by going to Start -> Programs -> Windows Mobile 6 SDK -> Tools -> Cellular Emulator

2. At the toolbar, see the DE: ? This is the COM Port number that your emulator will be interacting. Launch your emulator

3. Once launched, you will notice that the radio is off. So go to File -> Configure -> Peripherals

4. At the Peripherals tab, type in COM4 on the Serial Port 0

5. Soft reset your emulator by going to File -> Reset -> Soft

Voila!!!. Once restarted, you can now send SMS to your phone.

Now you maybe wondering, what is the phone number of you Phone. To know the phone number assigned to your phone, go to the Cellular Emulator and Go to SMS Tab. The phone number assigned to your phone is there.

Notice at the Call Manager tab and at the Preset Number option ? These are the numbers assigned to a Call Behaviour, Say if you call 727024, the emulator will emulate Busy phone.

Hope this was useful.