100% found this document useful (1 vote)
435 views

Kiosk Mode Setup

This document provides instructions to configure Windows 10 in kiosk mode using the Shell Launcher feature. It involves: 1. Enabling the Shell Launcher feature in Windows features. 2. Using PowerShell to configure the default shell for all users and a custom shell for a kiosk account that launches a specific kiosk application on login. 3. Verifying the shell configurations have been applied correctly.

Uploaded by

Mato Granić
Copyright
© © All Rights Reserved
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
435 views

Kiosk Mode Setup

This document provides instructions to configure Windows 10 in kiosk mode using the Shell Launcher feature. It involves: 1. Enabling the Shell Launcher feature in Windows features. 2. Using PowerShell to configure the default shell for all users and a custom shell for a kiosk account that launches a specific kiosk application on login. 3. Verifying the shell configurations have been applied correctly.

Uploaded by

Mato Granić
Copyright
© © All Rights Reserved
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 2

1.

Have windows 10 enterprise licence


2. Create secont user account for kiosk mode
3. Set password for first account
4. Remove all unnecessary programs and files
5. Set your kiosk app in desktop (hidden folder)
6. Open Add or remove programs -> Programs and features -> Turn Windows features on
or off -> Device Lockdown and check Shell Launcher
7. Launch PowerShell as admin and paste next codes:

//-----Step_1-----
$COMPUTER = "localhost"
$NAMESPACE = "root\standardcimv2\embedded"

# Create a handle to the class instance so we can call the static methods.
try {
$ShellLauncherClass = [wmiclass]"\\$COMPUTER\${NAMESPACE}:WESL_UserSetting"
} catch [Exception] {
write-host $_.Exception.Message;
write-host "Make sure Shell Launcher feature is enabled"

function Get-UsernameSID($AccountName) {

$NTUserObject = New-Object System.Security.Principal.NTAccount($AccountName)


$NTUserSID =
$NTUserObject.Translate([System.Security.Principal.SecurityIdentifier])

return $NTUserSID.Value

}
$ShellLauncherClass.SetEnabled($TRUE)

$IsShellLauncherEnabled = $ShellLauncherClass.IsEnabled()
"`nEnabled is set to " + $IsShellLauncherEnabled.Enabled
//-----Step_1end-----
//There shuldnt be any error and Shell launcher shuld be enabled

//-----Step_2-----
//Bellow are user accounts stored as variables, you can use any number of accounts
you want, make shure you have write correct account names
$KIOSK_SID = Get-UsernameSID("KioskMode")
$ADMIN_SID = Get-UsernameSID("AdminPC")

$restart_shell = 0
$restart_device = 1
$shutdown_device = 2

//Setup default shell


$ShellLauncherClass.SetDefaultShell("C:\Windows\explorer.exe", $restart_shell)
$DefaultShellObject = $ShellLauncherClass.GetDefaultShell()
"`nDefault Shell is set to " + $DefaultShellObject.Shell + " and the default action
is set to " + $DefaultShellObject.defaultaction

//Setup for other accounts custom shells, for kiosk mode set link to application
$ShellLauncherClass.SetCustomShell($KIOSK_SID,"C:\Users\KioskMode\Desktop\KioskAppF
older\KioskApp.exe", ($null), ($null), $restart_shell)
$ShellLauncherClass.SetCustomShell($ADMIN_SID,"C:\Windows\explorer.exe", ($null),
($null), $restart_shell)
"`nCurrent settings for custom shells:"
Get-WmiObject -namespace $NAMESPACE -computer $COMPUTER -class WESL_UserSetting |
Select Sid, Shell, DefaultAction
//-----Step_2end-----

// If you screw up something in process you cant override shell, you must remove it
first and set up again. This code removes shell:
$ShellLauncherClass.RemoveCustomShell($KIOSK_SID)

Additional links:
https://docs.microsoft.com/en-us/windows-hardware/customize/enterprise/shell-
launcher
https://docs.microsoft.com/en-us/windows/configuration/kiosk-shelllauncher

You might also like