Ich musste gerade bei einem Kunden dafür sorgen, dass der Internet Explorer ohne Navigationsleisten und sonstige Benutzerschnittstellen startet, um eine browserbasierte Applikation zum SmartCard Rollout zu veröffentlichen. Die Suche nach einer Lösung gestaltete sich hierbei schwieriger als erwartet.

Der häufigste Ansatz, den Google bei einer entsprechenden Anfrage ausspuckte, war der eingebaute “Kiosk Mode” des Internet Explorers. Der Modus wird durch den Aufruf des IE mit dem Parameter -k aktiviert, s. http://support.microsoft.com/kb/154780. Dieser Modus versetzt den IE in den Vollbild Modus, blendet aber, im Gegensatz zum Tastendruck F11, die Symbolleisten komplett aus. Ein Beenden des IE ist dann nur noch über Alt. + F4 möglich und auch die sonstige Bedienung beschränkt sich ausschliesslich auf Tastenkürzel. Eine eher endkundenuntaugliche Variante 🙁

Der nächste Ansatz waren Microsoft Group Policies, aber auch hier gab es zu viele Einschränkungen und Probleme. So lassen sich die Symbolleisten des IE nicht komplett per Policy ausblenden, sondern nur einzelne Icons, was wiederum Anpassungen in der Registry unter HKCU notwendig gemacht hätte, um die Symbolleisten komplett zu entfernen. Hier gehen die ansonsten ausufernden IE Policies eindeutig nicht weit genug 🙁

Die Lösung kam in Form einen VBS Objekts. Der Internet Explorer lässt sich über VBS ansprechen und steuern. Dies gab mir die Möglichkeit, auch das Erscheinungsbild des Browsers soweit anzupassen, dass sämtliche Steuerelemente ausgeblendet werden können, ohne wichtige Funktionen zu beeinträchtigen. Mit dem folgenden Code lässt sich nun ein IE mit einer vordefinierten URL starten und ein Ausbruch aus dieser Umgebung ist deutlich erschwert 🙂

DIM IE
Set IE = CreateObject("InternetExplorer.Application")
IE.Navigate "http://das.ist.die.anzuzeigende.url"
IE.Visible=True
IE.Toolbar=no
IE.Menubar=no
IE.Statusbar=no
IE.Width=750
IE.Height=600
IE.Resizable=yes
'IE.Top=5
'IE.Left=5

Auf den Eintrag IE.Navigate folgt hierbei die aufzurufende URL, wobei die gesamte URL in Anführungszeichen gesetzt sein muss. Optionale Parameter sind die Fenstergrösse (IE.Width/IE.Height) und die Position des Fensters auf dem Desktop (IE.Top/IE.Left).

IE Kiosk Mode

Das Script funktioniert sowohl unter Windows XP als auch 2003 Server problemlos. Unter Vista und 2008 Server sind Administrator Rechte notwendig, um den gewünschten Effekt zu erzielen!

Gruss
Ecki

I recently had a customer that wanted Internet Explorer to be published as a locked down version without toolbars and userinterface. The goal was to publish a browser based application to allow for a smart card rollout and not allowing users to browse away from this site. The search for a solution was harder than expected.

The solution most frequently found with Google was the built in “kiosk mode” of Internet Explorer. This mode can be activated by appending the parameter -k to the IE shortcut. For more details see http://support.microsoft.com/kb/154780. In this mode the IE starts in full screen mode, but without the ability to access the navigation panes, toolbars and menus as it would be possible when switching to full screen view by pressing F11. To end such a session, the user is forced to use the Alt. + F4 hotkey and all navigation in IE has to be done through hotkeys too. Not the solution we wanted for standard users 🙁

The next approach were Microsoft Group policies, but they too had too many constraints and issues. One issue here was, that there is no way, to hide the standard toolbars through group policies. It would have been therefore inevitable to manipulate the HKCU branch of the users registry at logon. This is a subject, where the otherwise “overloaded” IE policies are not detailed enough 🙁

The solution came through a VBS object. Internet Explorer can be addresses and controlled through VBS. This gave me the possibility to adjust the user interface of the IE and to hide all toolbars, navigation panes and menues, without disabling basic functionality. The following code starts IE with a predefined URL and makes it much more difficult for users to break out of the predefined environment 🙂

DIM IE
Set IE = CreateObject("InternetExplorer.Application")
IE.Navigate "http://this.is.the.url.to.be.shown"
IE.Visible=True
IE.Toolbar=no
IE.Menubar=no
IE.Statusbar=no
IE.Width=750
IE.Height=600
IE.Resizable=yes
'IE.Top=5
'IE.Left=5

The entry IE.Navigate stands for the target URL. Take care that the whole URL is surrounded by double quotes. Optional parameters are for the windows size (IE.Width/IE.Height) and the windows position on the users desktop (IE.Top/IE.Left).

IE kiosk mode

This script works perfect under Windows XP and 2003 Server. With Vista and 2008 Server administrative privileges are required!

Regards
Ecki