How-To: Custom Desktop

  • Thread starter Thread starter Lloyd Dupont
  • Start date Start date
L

Lloyd Dupont

A friend of mine has little kid. Big enough to use the computer.
He created a kid user with restricted user account for his kid but he would
like to remove the confusing start menu, etc.... with a simple, home made,
kiosk style, fullscreen GUI interface.

Which could just launch a bunch of game and logout/shutdown.

And he ask how to do that.
But I don't know!

It's why.. ahum.. I'm asking you, how to (or what's the best way to) write a
"kiosk style, fullscreen GUI" which lauch at the start of the session and
prevent the WINDOWS, WINDOWS+E, WINDOWS+M and ALT+TAB keys to work, or that
sort of things...

Any tip or link?
 
Lloyd Dupont said:
A friend of mine has little kid. Big enough to use the computer.
He created a kid user with restricted user account for his kid but he
would like to remove the confusing start menu, etc.... with a simple, home
made, kiosk style, fullscreen GUI interface.

Not a gdi problem.
 
Hi Lloyd,

You can write an HTML application (.hta), which supports a full-screen kiosk mode, renders a web page-style interface and can
execute JavaScript to run programs, etc. Unfortunately, you won't be able to prevent ALT+TAB (and probably the Windows keys too)
from being activated. You can run this program (or any program) at startup by dropping a shortcut in the Start-->Program
Files-->Startup folder for the user.

Introduction to HTML Applications on MSDN:
http://msdn.microsoft.com/library/default.asp?url=/workshop/author/hta/overview/htaoverview.asp

If you're more comfortable using .NET or would just like more control then you can use an HTA as the shell and write a custom
WinForms UserControl to supply the interface (using the <object> tag in your HTA).

Hosting WinForms UserControl in IE (MSDN):
http://msdn.microsoft.com/msdnmag/issues/02/01/UserCtrl/

Technically, you could also write the entire application in managed code if you want but you'll have to figure out how to hide the
task bar. Create a WinForms application and add a startup Form. Hide all border chrome and set the Form's WindowState to
Maximized. Add a shortcut to your .exe in the Startup folder just like you would with an HTA.

I believe Windows supports a kiosk mode that you might be able to use; however, it might only be available on a Windows XP Embedded,
although I'm not really sure of that either.

Anyway, I think HTA is your best option if you have any experience writing web pages already and little experience writing managed
code. HTA supports a true kiosk mode and you can also embed .NET controls to render a GUI, or an MDX (managed DirextX) GUI, if you
want. However, no matter your choice it's not going to be possible to disable certain key combinations such as ALT+TAB and
CTRL+ALT+DEL.

GL
 
Lloyd said:
A friend of mine has little kid. Big enough to use the computer.
He created a kid user with restricted user account for his kid but he would
like to remove the confusing start menu, etc.... with a simple, home made,
kiosk style, fullscreen GUI interface.

Which could just launch a bunch of game and logout/shutdown.

And he ask how to do that.
But I don't know!

It's why.. ahum.. I'm asking you, how to (or what's the best way to) write a
"kiosk style, fullscreen GUI" which lauch at the start of the session and
prevent the WINDOWS, WINDOWS+E, WINDOWS+M and ALT+TAB keys to work, or that
sort of things...

Any tip or link?

Sounds like you need to replace the shell, from explorer to something other/simpler. ALT+TAB and windows key shortcuts will remain. However you can easily disable the windows keys (or any other) by a proper registry entries. There is such thing like scandcode map, though I'm not sure if it can be defined for each user individually.
 
Loyd

Just drag and drop and than using the righ button on the start menu you can
remove all the settings from the start menu. Be aware that you have to do as
well all All Users settings.

Cor
 
hihi...
Truth to be told, I have much better experience writting .NET application
than HTML pages....
Although HTML pages are not that difficult :-)
 
Thanks!

Grzegorz Wróbel said:
Sounds like you need to replace the shell, from explorer to something
other/simpler. ALT+TAB and windows key shortcuts will remain. However you
can easily disable the windows keys (or any other) by a proper registry
entries. There is such thing like scandcode map, though I'm not sure if it
can be defined for each user individually.
 
Lloyd said:
A friend of mine has little kid. Big enough to use the computer.
He created a kid user with restricted user account for his kid but he would
like to remove the confusing start menu, etc.... with a simple, home made,
kiosk style, fullscreen GUI interface.

Which could just launch a bunch of game and logout/shutdown.

And he ask how to do that.
But I don't know!

It's why.. ahum.. I'm asking you, how to (or what's the best way to) write a
"kiosk style, fullscreen GUI" which lauch at the start of the session and
prevent the WINDOWS, WINDOWS+E, WINDOWS+M and ALT+TAB keys to work, or that
sort of things...

Any tip or link?

I'm reading stuff about seperate shells, using html pages.. what ever
happened to just using the policies? Give the kid a separate login and
with the policy manager remove all rights except that what you allow.
 
Lloyd said:
It's why.. ahum.. I'm asking you, how to (or what's the best way to) write a
"kiosk style, fullscreen GUI" which lauch at the start of the session and
prevent the WINDOWS, WINDOWS+E, WINDOWS+M and ALT+TAB keys to work, or that
sort of things...

I can strongly recommend KCSDK from Meliora Software, which does exactly
what you want. I have very good experience with it (with a kiosk
application that we developed). It can disable any key combination
(Ctrl+Esc, Ctrl+Alt+Del, Alt+Tab):

http://www.meliorasoft.com/kits/keyboard/index.php

It's not free, but it's not likely that you can develop such a solution
on your own. You'd have to replace the keyboard driver as well as the
logon manager. Do yourself a favor, and get a tested, reliable solution
like KCSDK.

Tom
 
Hi Lloyd,

The purpose of the HTA is not necessarily to write the entire interface in HTML, but to act as the fullscreen shell that will
completely cover the desktop, task bar and any docked tools windows.

You really don't need to know much about html. The link I gave you supplies all of the information that you need (and links to
other references as well) to get started.

You just need a single web page with an .hta extension. This will serve as the program file and it should contain the HTA header
that specifies the fullscreen setting, and an object tag that points to a WinForms UserControl that supplies the interface. The
html required is really quite small if you want to host a managed control as the interface.

Once you have a blank, fullscreen UserControl to work with the possibilities are endless. Add a TabControl if you want for
navigation. One of the tabs could even host a WebBrowser control for internet access.

HTH
 
What is this policy manager you talking about?
I have XP Home edition, I looked into the Control Panel and into the
Accessories, but I didn't find it...
 
Lloyd said:
What is this policy manager you talking about?
I have XP Home edition, I looked into the Control Panel and into the
Accessories, but I didn't find it...

Ah ok, that's not available in XP Home.
 
Back
Top