Multi Monitor Kiosk

Run the runtime in kiosk mode on several monitors at once by giving each Chrome kiosk window its own window position and user data directory.

Updated 2 min read
On this page (5 sections)
  1. Functional explanation
  2. Command line switches
  3. Determine the window position
  4. Start all kiosk windows at once
  5. Security note

Functional explanation

Setup adds two shortcuts to the Windows desktop. Envision (Chrome) opens the runtime in a normal browser window, and Envision Kiosk (Chrome) opens it full screen in kiosk mode, without toolbars or menus.

Both shortcuts point at Chrome and open http://localhost. On a client computer, replace localhost with the IP address or DNS name of the server.

A single kiosk shortcut fills one monitor. To fill several monitors, start one Chrome kiosk window per monitor and tell each window where to open and which profile to use.

Each kiosk window is a separate client. Every window has its own session, so the operator logs in to each window separately, and each window can show a different page.

Command line switches

The default kiosk shortcut uses the target below. Open the shortcut properties in Windows Explorer to see it.

Target of the Envision Kiosk (Chrome) shortcut
"C:\Program Files\Google\Chrome\Application\chrome.exe" --kiosk "http://localhost"

Two extra Chrome switches are needed to place a kiosk window on a chosen monitor. Both must be set on every window.

SwitchDescriptionExample
--kioskOpens the window full screen without browser controls.--kiosk
--window-positionHorizontal and vertical position of the window in the combined desktop, in pixels. Determines which monitor the window opens on.--window-position=1920,0
--user-data-dirFolder holding the Chrome profile for this window. Each window needs its own folder, otherwise Chrome reuses the window that is already open instead of starting a second one.--user-data-dir=C:\Kiosk\monitor2

Determine the window position

The window position is measured across the whole desktop, not per monitor. Add the widths of all monitors to the left of the target monitor to get its horizontal position.

The example below uses three Full HD monitors (1920 by 1080) placed side by side, with monitor 1 on the left.

MonitorPositionSwitch
Left0, 0--window-position=0,0
Middle1920, 0--window-position=1920,0
Right3840, 0--window-position=3840,0

Check the physical arrangement in Windows under Settings, System, Display. If the monitors are not arranged left to right, or use different resolutions, read the positions from that screen.

Start all kiosk windows at once

Create a batch file, for example Start.bat, with one start command per monitor. Each line uses its own window position and its own user data directory.

Start.bat for three monitors
start C:\"Program Files"\Google\Chrome\Application\chrome.exe --kiosk "http://localhost" --window-position=0,0 --user-data-dir=C:\Kiosk\monitor1
start C:\"Program Files"\Google\Chrome\Application\chrome.exe --kiosk "http://localhost" --window-position=1920,0 --user-data-dir=C:\Kiosk\monitor2
start C:\"Program Files"\Google\Chrome\Application\chrome.exe --kiosk "http://localhost" --window-position=3840,0 --user-data-dir=C:\Kiosk\monitor3

Note that the quotation marks sit around Program Files rather than around the whole path, because the start command treats a leading quoted string as the window title.

Double-click the batch file to open all three kiosk windows. To start the kiosk windows automatically at Windows logon, create a task in Windows Task Scheduler that runs this batch file, as described in the Kiosk Mode article.

Security note

ALT+F4 closes a kiosk window. To prevent an operator from leaving the kiosk, block that key combination with local or group policies, or remap it with the Keyboard Manager in Microsoft PowerToys.

Kiosk mode alone does not lock down the computer. Protect the client with Group Policies, either from a domain controller or configured locally by the local administrator.

Something missing or wrong in this article? Contact us