Jump to content

Lock down the user interface (Windows Mobile 6 Professional)

Guest wrack

Recommended Posts

Guest wrack

Hey Guyz,

Long time no see..! I have been assigned to develope a barcode scanning application using .NET Compact Framework 2.0 (I can use 3.5 if necessary).

Right then to the point, I have already developed and finished the barcode application and there came a new demand from the business team who uses the application.

Basically the devices we use are HP iPaq (Windows Mobile 6 Professional) in combination with Grabba barcode scanner. They have requested that the application I wrote starts automatically and covers the entire screen. Now as for covering the entire screen is working fine but I need to do something about starting the application when the device starts up or when a device is put to sleep by clicking the power button and then bring back, the application should start up or show up automatically.

Basically run the application in a kiosk mode.

Now I have been researching and exploring a lot of third party applications and one application so far that comes the closest to my needs is the SPB Mobile Shell when using classic today screen. It does pretty much what I want apart from locking down all buttons.

Now what I would like to know is, is it even possible to lock down all buttons at all? If not then how would I atleast go about developing an app which behaves like a SPB Mobile Shell? I know that the SPB Mobile Shell is very complicated application but all I want if the behaviour of SPB Mobile Shell's Today scree.

Now many would say that why am I spending round about AUS $1200.00 on a single piece of hardware where a barcode scan can be done using $200.00 scanner. We have a bunch of users around the country who manages a bucket load of lets say (things with barcode on them). Now we need to efficientry trak those things so they can be found easily by anyone. We already have a fully grown windows application for the business and this mobile application needs to be integrated with it. Since the users are always running around and scattered around the country we have a web service to which the application needs to talk to in order to transmit the scan data. So I need to use the PDA with Wi-Fi capability and a scanner to which the PDA will be attached and all will work.

Like I said the application is already finished, it's just we would like it to run in a kiosk mode so user's don't need to be trained to use the PDA at all and we can get away with a lot of savings on the training.

If I need to start by creating my own custom shell then where would I start from?

Regards :D

Edited by wrack
Link to comment
Share on other sites

  • 2 weeks later...
  • 11 months later...
  • 2 weeks later...
Guest Sandman_A_C

Well, kiosk mode isn't officially supported in windows mobile. Windows Ce has some stuff you can do, but you have to hack windows mobile in order to get a psuedo kiosk mode. And if the os changes, gets upgraded, etc, all bets are off. It may no longer work.

But reading your reqs, I'm not sure you really want the app to run as a kiosk. You didn't say for sure if the user should ever be able to get back to the os. I'm really wondering if you can get away with just making sure that your app has run and is on top.

Here are some pointers, and forgive me if you've already played with some of these and they didn't pan out. Some of this is a brain dump and you'll have to do a little googling to find. If you have problems finding something, let me know and I'll see what I can dig up.

1. You need to hide or cover the task bar. I think it is a registry settting and you can simply move it off the screen.

2. Make sure your app is maximized. Sounds like you already have this one covered.

3. Running the app on startup should be as simple as placing a link to your application in the startup directory.

4. Running your application on wake. If it was the last thing on the top of the z-order, it should still be there when the device wakes. Not sure why it wouldn't be. however, you can run applications on events. From .netcf you'll have to pinvoke CERunAppAtEvent. If you're curious about some usage, there is a library called the smart device framework by opennetcf. Some of the older versions are opensource, so you can take a look at it.

You can find some more info in the slideshow on this page. It talks about various aspects of kiosk mode in windows mobile.

Maybe this will get you started.


Edited by Sandman_A_C
Link to comment
Share on other sites

Guest 42gears

Good suggestion above. I have a few comments though.

1) You can implement kiosk functionality yourself if you have access to application code. It seems in this case you have. But it will not be possible for third-party applications.

2) What if you want to provide two applications to users, not just one. Some code must run which will only allow these two apps to execute. This is a very common requirement. (e.g. user might need to access Phone application along with the main business application).

3) For completeness there are many other features that must be disabled to completely lock down a generic Windows Mobile device e.g. ActiveSync, Keypad, Autorun, wceload (cab installation).

4) Providing admin access for maintenance and repair of the device. In our experience this turn out to be quite important.

We offer SureLock Studio to companies that want to easily lock down their Windows Mobile devices. It is designed to take care of all the above situations along with many other features. You can see more details at http://www.42gears.com/surelock/ and can download an evaluation copy. Do mail us at [email protected] if you have any questions.

Good day,



Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in

Sign In Now
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.