- Use Shell Launcher to create a Windows 10 kiosk
- Differences between Shell Launcher v1 and Shell Launcher v2
- Requirements
- Enable Shell Launcher feature
- Configure a custom shell in MDM
- XML for Shell Launcher configuration
- Custom OMA-URI setting
- Configure a custom shell using PowerShell
- default action, custom action, exit code
- Использование средства запуска оболочки для создания терминала на базе Windows 10 Use Shell Launcher to create a Windows 10 kiosk
- Различия между shell Launcher v1 и Shell Launcher v2 Differences between Shell Launcher v1 and Shell Launcher v2
- Требования Requirements
- Включить функцию запуска shell Enable Shell Launcher feature
- Настройка настраиваемой оболочки в MDM Configure a custom shell in MDM
- Конфигурация XML для запуска shell XML for Shell Launcher configuration
- Настраиваемый параметр OMA-URI Custom OMA-URI setting
- Настройка настраиваемой оболочки с помощью PowerShell Configure a custom shell using PowerShell
- действие по умолчанию, настраиваемые действия, код выхода default action, custom action, exit code
Use Shell Launcher to create a Windows 10 kiosk
Applies to
Using Shell Launcher, you can configure a device that runs an application as the user interface, replacing the default shell (explorer.exe). In Shell Launcher v1, available in Windows 10, you can only specify a Windows desktop application as the replacement shell. In Shell Launcher v2, available in Windows 10, version 1809 and above, you can also specify a UWP app as the replacement shell. To use Shell Launcher v2 in version 1809, you need to install the KB4551853 update.
Shell Launcher controls which application the user sees as the shell after sign-in. It does not prevent the user from accessing other desktop applications and system components.
Methods of controlling access to other desktop applications and system components can be used in addition to using the Shell Launcher. These methods include, but are not limited to:
- Group Policy — example: Prevent access to registry editing tools
- AppLocker — Application control policies
- Mobile Device Management — Enterprise management of device security policies
You can apply a custom shell through Shell Launcher by using PowerShell. In Windows 10, version 1803 and later, you can also use mobile device management (MDM) to apply a custom shell through Shell Launcher.
Differences between Shell Launcher v1 and Shell Launcher v2
Shell Launcher v1 replaces explorer.exe , the default shell, with eshell.exe which can launch a Windows desktop application.
Shell Launcher v2 replaces explorer.exe with customshellhost.exe . This new executable file can launch a Windows desktop application or a UWP app.
In addition to allowing you to use a UWP app for your replacement shell, Shell Launcher v2 offers additional enhancements:
- You can use a custom Windows desktop application that can then launch UWP apps, such as Settings and Touch Keyboard.
- From a custom UWP shell, you can launch secondary views and run on multiple monitors.
- The custom shell app runs in full screen, and can run other apps in full screen on user’s demand.
For sample XML configurations for the different app combinations, see Samples for Shell Launcher v2.
Requirements
Windows 10 doesn’t support setting a custom shell prior to OOBE. If you do, you won’t be able to deploy the resulting image.
Shell Launcher doesn’t support a custom shell with an application that launches a different process and exits. For example, you cannot specify write.exe in Shell Launcher. Shell Launcher launches a custom shell and monitors the process to identify when the custom shell exits. Write.exe creates a 32-bit wordpad.exe process and exits. Because Shell Launcher is not aware of the newly created wordpad.exe process, Shell Launcher will take action based on the exit code of Write.exe, such as restarting the custom shell.
A domain, Azure Active Directory, or local user account.
A Windows application that is installed for that account. The app can be your own company application or a common app like Internet Explorer.
Enable Shell Launcher feature
To set a custom shell, you first turn on the Shell Launcher feature, and then you can set your custom shell as the default using PowerShell or MDM.
To turn on Shell Launcher in Windows features
Go to Control Panel > Programs and features > Turn Windows features on or off.
Expand Device Lockdown.
Select Shell Launcher and OK.
Alternatively, you can turn on Shell Launcher using Windows Configuration Designer in a provisioning package, using SMISettings > ShellLauncher , or you can use the Deployment Image Servicing and Management (DISM.exe) tool.
To turn on Shell Launcher using DISM
Open a command prompt as an administrator.
Enter the following command.
Configure a custom shell in MDM
You can use XML and a custom OMA-URI setting to configure Shell Launcher in MDM.
XML for Shell Launcher configuration
The following XML sample works for Shell Launcher v1:
For Shell Launcher v2, you can use UWP app type for Shell by specifying the v2 namespace, and use v2:AppType to specify the type, as shown in the following example. If v2:AppType is not specified, it implies the shell is Win32 app.
In the XML for Shell Launcher v2, note the AllAppsFullScreen attribute. When set to True, Shell Launcher will run every app in full screen, or maximized for desktop apps. When this attribute is set to False or not set, only the custom shell app runs in full screen; other apps launched by the user will run in windowed mode.
Custom OMA-URI setting
In your MDM service, you can create a custom OMA-URI setting to configure Shell Launcher v1 or v2. (The XML that you use for your setting will determine whether you apply Shell Launcher v1 or v2.)
The OMA-URI path is ./Device/Vendor/MSFT/AssignedAccess/ShellLauncher .
For the value, you can select data type String and paste the desired configuration file content into the value box. If you wish to upload the xml instead of pasting the content, choose data type String (XML file) .
After you configure the profile containing the custom Shell Launcher setting, select All Devices or selected groups of devices to apply the profile to. Don’t assign the profile to users or user groups.
Configure a custom shell using PowerShell
For Shell Launcher v1, modify the following PowerShell script as appropriate. The comments in the sample script explain the purpose of each section and tell you where you will want to change the script for your purposes. Save your script with the extension .ps1, open Windows PowerShell as administrator, and run the script on the kiosk device.
default action, custom action, exit code
Shell launcher defines 4 actions to handle app exits, you can customize shell launcher and use these actions based on different exit code.
Value | Description |
---|---|
0 | Restart the shell |
1 | Restart the device |
2 | Shut down the device |
3 | Do nothing |
These action can be used as default action, or can be mapped to a specific exit code. Refer to Shell Launcher to see how these codes with Shell Launcher WMI.
Использование средства запуска оболочки для создания терминала на базе Windows 10 Use Shell Launcher to create a Windows 10 kiosk
Относится к: Applies to
- Windows 10 Ent, Edu Windows 10 Ent, Edu
С помощью оболочки Launcher можно настроить устройство, которое запускает приложение в качестве пользовательского интерфейса, заменив оболочку по умолчанию (explorer.exe). Using Shell Launcher, you can configure a device that runs an application as the user interface, replacing the default shell (explorer.exe). В shell Launcher v1, доступном в Windows 10, можно указать только настольное приложение Windows в качестве оболочки замены. In Shell Launcher v1, available in Windows 10, you can only specify a Windows desktop application as the replacement shell. В windows10 версии 1809 и выше в версии 1809 можно также указать приложение UWP в качестве оболочки замены. In Shell Launcher v2, available in Windows 10, version 1809 and above, you can also specify a UWP app as the replacement shell. Чтобы использовать shell Launcher v2 в версии 1809, необходимо установить обновление KB4551853. To use Shell Launcher v2 in version 1809, you need to install the KB4551853 update.
Shell Launcher управляет приложением, которое пользователь видит в качестве оболочки после входной записи. Shell Launcher controls which application the user sees as the shell after sign-in. Это не мешает пользователю получать доступ к другим настольным приложениям и системным компонентам. It does not prevent the user from accessing other desktop applications and system components.
Методы управления доступом к другим настольным приложениям и системным компонентам можно использовать в дополнение к использованию ракеты-носителя. Methods of controlling access to other desktop applications and system components can be used in addition to using the Shell Launcher. Эти методы включают, но не ограничиваются: These methods include, but are not limited to:
- Групповой политики — пример: предотвращение доступа к средствам редактирования реестра Group Policy — example: Prevent access to registry editing tools
- AppLocker — политики управления приложениями AppLocker — Application control policies
- Управление мобильными устройствами — управление корпоративными политиками безопасности устройств Mobile Device Management — Enterprise management of device security policies
Настраиваемую оболочку можно применить через shell Launcher с помощью PowerShell. You can apply a custom shell through Shell Launcher by using PowerShell. В Windows 10 версии 1803 и более поздней версии можно также использовать управление мобильными устройствами (MDM) для применения настраиваемой оболочки через Shell Launcher. In Windows 10, version 1803 and later, you can also use mobile device management (MDM) to apply a custom shell through Shell Launcher.
Различия между shell Launcher v1 и Shell Launcher v2 Differences between Shell Launcher v1 and Shell Launcher v2
Shell Launcher v1 заменяет оболочку по умолчанию, с помощью которой можно explorer.exe eshell.exe запустить настольное приложение Windows. Shell Launcher v1 replaces explorer.exe , the default shell, with eshell.exe which can launch a Windows desktop application.
Shell Launcher v2 explorer.exe заменяется customshellhost.exe . Shell Launcher v2 replaces explorer.exe with customshellhost.exe . Этот новый исполняемый файл может запустить настольное приложение Windows или приложение UWP. This new executable file can launch a Windows desktop application or a UWP app.
В дополнение к использованию приложения UWP для вашей оболочки замены, Shell Launcher v2 предлагает дополнительные улучшения: In addition to allowing you to use a UWP app for your replacement shell, Shell Launcher v2 offers additional enhancements:
- Вы можете использовать настраиваемые приложения для рабочего стола Windows, которые затем могут запускать приложения UWP, такие как Параметры и сенсорная клавиатура. You can use a custom Windows desktop application that can then launch UWP apps, such as Settings and Touch Keyboard.
- Из пользовательской оболочки UWP можно запускать вторичные представления и запускать на нескольких мониторах. From a custom UWP shell, you can launch secondary views and run on multiple monitors.
- Настраиваемая оболочка приложения выполняется на полном экране и может запускать другие приложения на полном экране по требованию пользователя. The custom shell app runs in full screen, and can run other apps in full screen on user’s demand.
Примеры конфигураций XML для различных комбинаций приложений см. в примере Примеры для shell Launcher v2. For sample XML configurations for the different app combinations, see Samples for Shell Launcher v2.
Требования Requirements
Windows 10 не поддерживает настройку пользовательскую оболочку до запуска при первом включении компьютера. Windows 10 doesn’t support setting a custom shell prior to OOBE. Если вы поддерживаете эту функцию, вы не сможете развернуть полученный образ. If you do, you won’t be able to deploy the resulting image.
Средства запуска оболочки не поддерживают пользовательскую оболочку с приложением, которое запускает другой процесс и затем завершает работу. Shell Launcher doesn’t support a custom shell with an application that launches a different process and exits. Например, нельзя указать write.exe в средстве запуска оболочки. For example, you cannot specify write.exe in Shell Launcher. Средство запуска оболочки запускает пользовательскую оболочку и отслеживает процесс для идентификации завершения работы пользовательской оболочки. Shell Launcher launches a custom shell and monitors the process to identify when the custom shell exits. Write.exe создает 32-разрядный процесс wordpad.exe и завершает работу. Write.exe creates a 32-bit wordpad.exe process and exits. Поскольку средство запуска оболочки не распознает созданный процесс wordpad.exe, средство запуска оболочки будет действовать в соответствии с кодом завершения Write.exe, например перезапуск пользовательской оболочки. Because Shell Launcher is not aware of the newly created wordpad.exe process, Shell Launcher will take action based on the exit code of Write.exe, such as restarting the custom shell.
Домен, Azure Active Directory или учетная запись локального пользователя. A domain, Azure Active Directory, or local user account.
Приложение Windows, установленное для этой учетной записи. A Windows application that is installed for that account. Можно использовать собственное приложение вашей компании или стандартное приложение типа Internet Explorer. The app can be your own company application or a common app like Internet Explorer.
Включить функцию запуска shell Enable Shell Launcher feature
Чтобы настроить настраиваемую оболочку, сначала включите функцию Запуска оболочки, а затем можно настроить настраиваемую оболочку в качестве настраиваемой оболочки по умолчанию с помощью PowerShell или MDM. To set a custom shell, you first turn on the Shell Launcher feature, and then you can set your custom shell as the default using PowerShell or MDM.
Включение средства запуска оболочки в компонентах Windows To turn on Shell Launcher in Windows features
Откройте «Панель управления» > Программы и компоненты > Включение или отключение компонентов Windows. Go to Control Panel > Programs and features > Turn Windows features on or off.
Разверните узел Блокировка устройств. Expand Device Lockdown.
Выберите Средство запуска оболочки и нажмите кнопку ОК. Select Shell Launcher and OK.
Кроме того, вы можете включить запуск оболочки с помощью конструктора конфигурации Windows в пакете подготовка, с помощью средства обслуживания и управления изображениями развертывания SMISettings > ShellLauncher (DISM.exe). Alternatively, you can turn on Shell Launcher using Windows Configuration Designer in a provisioning package, using SMISettings > ShellLauncher , or you can use the Deployment Image Servicing and Management (DISM.exe) tool.
Включение средства запуска оболочки с помощью DISM To turn on Shell Launcher using DISM
Откройте окно командной строки от имени администратора. Open a command prompt as an administrator.
Введите следующую команду. Enter the following command.
Настройка настраиваемой оболочки в MDM Configure a custom shell in MDM
Для настройки запуска shell в MDM можно использовать XML и настраиваемый параметр OMA-URI. You can use XML and a custom OMA-URI setting to configure Shell Launcher in MDM.
Конфигурация XML для запуска shell XML for Shell Launcher configuration
Следующий пример XML работает для Shell Launcher v1: The following XML sample works for Shell Launcher v1:
Для shell Launcher v2можно использовать тип приложения UWP, указав пространство имен v2, и указать тип, как показано в Shell следующем v2:AppType примере. For Shell Launcher v2, you can use UWP app type for Shell by specifying the v2 namespace, and use v2:AppType to specify the type, as shown in the following example. Если v2:AppType не указано, это означает, что оболочка — это приложение Win32. If v2:AppType is not specified, it implies the shell is Win32 app.
В XML для shell Launcher v2 обратите внимание на атрибут AllAppsFullScreen. In the XML for Shell Launcher v2, note the AllAppsFullScreen attribute. При наборе Trueзапуск оболочки будет запускать каждое приложение на полном экране или максимально использовать для настольных приложений. When set to True, Shell Launcher will run every app in full screen, or maximized for desktop apps. Если этот атрибут заданной для False или не заданной, только настраиваемая оболочка приложения запускается на полном экране; другие приложения, запущенные пользователем, будут работать в окне. When this attribute is set to False or not set, only the custom shell app runs in full screen; other apps launched by the user will run in windowed mode.
Настраиваемый параметр OMA-URI Custom OMA-URI setting
В службе MDM можно создать настраиваемый параметр OMA-URI для настройки shell Launcher v1 или v2. In your MDM service, you can create a custom OMA-URI setting to configure Shell Launcher v1 or v2. (XML, который используется для настройки, определит, применяет ли вы shell Launcher v1 или v2.) (The XML that you use for your setting will determine whether you apply Shell Launcher v1 or v2.)
Путь OMA-URI является ./Device/Vendor/MSFT/AssignedAccess/ShellLauncher . The OMA-URI path is ./Device/Vendor/MSFT/AssignedAccess/ShellLauncher .
Для значения можно выбрать тип данных и ввести необходимое содержимое файла String конфигурации в поле значения. For the value, you can select data type String and paste the desired configuration file content into the value box. Если вы хотите загрузить xml вместо вклейки контента, выберите тип String (XML file) данных. If you wish to upload the xml instead of pasting the content, choose data type String (XML file) .
После настройки профиля, содержащего настраиваемый параметр запуска оболочки, выберите Все устройства или выбранные группы устройств для применения профиля. After you configure the profile containing the custom Shell Launcher setting, select All Devices or selected groups of devices to apply the profile to. Не назначайте профиль пользователям или группам пользователей. Don’t assign the profile to users or user groups.
Настройка настраиваемой оболочки с помощью PowerShell Configure a custom shell using PowerShell
Сценарии для Shell Launcher v2 см. в примере сценариев WMI моста Shell Launcher v2. For scripts for Shell Launcher v2, see Shell Launcher v2 Bridge WMI sample scripts.
Для shell Launcher v1 измените следующий сценарий PowerShell по мере необходимости. For Shell Launcher v1, modify the following PowerShell script as appropriate. Комментарии в примере сценария поясняют назначение каждого раздела и подсказывают, где следует изменить сценарий для ваших целей. The comments in the sample script explain the purpose of each section and tell you where you will want to change the script for your purposes. Сохраните сценарий с расширением .ps1, откройте Windows PowerShell от имени администратора и запустите его на устройстве в режиме терминала. Save your script with the extension .ps1, open Windows PowerShell as administrator, and run the script on the kiosk device.
действие по умолчанию, настраиваемые действия, код выхода default action, custom action, exit code
Пусковая компания Shell определяет 4 действия для обработки выходов приложений, можно настроить пусковую статью оболочки и использовать эти действия на основе другого кода выхода. Shell launcher defines 4 actions to handle app exits, you can customize shell launcher and use these actions based on different exit code.
Значение Value | Описание Description |
---|---|
0 0 | Перезапуск оболочки Restart the shell |
1 1 | Перезапуск устройства Restart the device |
2 2 | Отключение устройства Shut down the device |
3 3 | Ничего не делать Do nothing |
Эти действия можно использовать в качестве действия по умолчанию или можно соедеть с определенным кодом выхода. These action can be used as default action, or can be mapped to a specific exit code. Обратитесь к пусковике Shell, чтобы узнать, как эти коды с WMI запуска shell Launcher. Refer to Shell Launcher to see how these codes with Shell Launcher WMI.