Разработка оболочки для windows

Содержание
  1. Использование средства запуска оболочки для создания терминала на базе Windows 10 Use Shell Launcher to create a Windows 10 kiosk
  2. Различия между shell Launcher v1 и Shell Launcher v2 Differences between Shell Launcher v1 and Shell Launcher v2
  3. Требования Requirements
  4. Включить функцию запуска shell Enable Shell Launcher feature
  5. Настройка настраиваемой оболочки в MDM Configure a custom shell in MDM
  6. Конфигурация XML для запуска shell XML for Shell Launcher configuration
  7. Настраиваемый параметр OMA-URI Custom OMA-URI setting
  8. Настройка настраиваемой оболочки с помощью PowerShell Configure a custom shell using PowerShell
  9. действие по умолчанию, настраиваемые действия, код выхода default action, custom action, exit code
  10. Практическое руководство. Создание оболочек COM How to: Create COM Wrappers
  11. Создание оболочек для COM-объектов в управляемом приложении Wrap COM Objects in a Managed Application
  12. Создание вызываемой оболочки времени выполнения с использованием Visual Studio To create a runtime callable wrapper using Visual Studio
  13. Создание вызываемой оболочки времени выполнения с использованием средств платформы .NET Framework To create a runtime callable wrapper using .NET Framework tools
  14. Создание оболочек для управляемых объектов в собственном приложении Wrap Managed Objects in a Native Application
  15. Создание вызываемой оболочки COM с использованием Visual Studio To create a COM callable wrapper using Visual Studio
  16. Создание вызываемой оболочки COM с использованием средств платформы .NET Framework To create a COM callable wrapper using .NET Framework tools

Использование средства запуска оболочки для создания терминала на базе 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.
Читайте также:  Как настроить rdp linux mint

Примеры конфигураций 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.

Читайте также:  Linux руководство администратора сети кирх

В 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.

Практическое руководство. Создание оболочек COM How to: Create COM Wrappers

Программы-оболочки модели COM можно создавать с использованием функций Visual Studio 2005 или средств платформы .NET Framework (Tlbimp.exe и Regasm.exe). You can create Component Object Model (COM) wrappers by using Visual Studio 2005 features or the .NET Framework tools Tlbimp.exe and Regasm.exe. Оба метода позволяют создать два типа программ-оболочек COM: Both methods generate two types of COM wrappers:

Вызываемая оболочка времени выполнения из библиотеки типов для выполнения COM-объектов в управляемом коде. A Runtime Callable Wrapper from a type library to run a COM object in managed code.

Вызываемая оболочка COM с соответствующими параметрами реестра для выполнения управляемого объекта в собственном приложении. A COM Callable Wrapper with the required registry settings to run a managed object in a native application.

В Visual Studio 2005 оболочку COM можно добавить в проект в виде ссылки. In Visual Studio 2005, you can add the COM wrapper as a reference to your project.

Создание оболочек для COM-объектов в управляемом приложении Wrap COM Objects in a Managed Application

Создание вызываемой оболочки времени выполнения с использованием Visual Studio To create a runtime callable wrapper using Visual Studio

Откройте проект управляемого приложения. Open the project for your managed application.

В меню Проект выберите пункт Показать все файлы. On the Project menu, click Show All Files.

В меню Проект щелкните команду Добавить ссылку. On the Project menu, click Add Reference.

В диалоговом окне «Добавление ссылки» перейдите на вкладку COM, выберите нужный компонент и нажмите кнопку ОК. In the Add Reference dialog box, click the COM tab, select the component you want to use, and click OK.

Обратите внимание, что в обозревателе решений в папку ссылок проекта добавляется COM-компонент. In Solution Explorer, note that the COM component is added to the References folder in your project.

Теперь можно написать код для доступа к COM-объекту. You can now write code to access the COM object. Сначала можно объявить объект, например с помощью оператора Imports для Visual Basic или оператора Using для C#. You can begin by declaring the object, such as with an Imports statement for Visual Basic or a Using statement for C#.

При программировании компонентов Microsoft Office сначала необходимо установить распространяемые основные сборки взаимодействия Microsoft Office. If you want to program Microsoft Office components, first install the Microsoft Office Primary Interop Assemblies Redistributable.

Создание вызываемой оболочки времени выполнения с использованием средств платформы .NET Framework To create a runtime callable wrapper using .NET Framework tools

  • Запустите средство Tlbimp.exe (программа экспорта библиотек типов). Run the Tlbimp.exe (Type Library Importer) tool.

Это средство создает сборку, которая содержит метаданные времени выполнения для типов, определенных в исходной библиотеке типов. This tool creates an assembly that contains run-time metadata for the types defined in the original type library.

Создание оболочек для управляемых объектов в собственном приложении Wrap Managed Objects in a Native Application

Создание вызываемой оболочки COM с использованием Visual Studio To create a COM callable wrapper using Visual Studio

Создайте проект библиотеки классов для управляемого класса, который требуется выполнять в машинном коде. Create a Class Library project for the managed class that you want to run in native code. Класс должен содержать конструктор без параметров. The class must have a parameterless constructor.

Убедитесь, что в файле AssemblyInfo присутствует полный номер версии сборки, состоящий из четырех частей. Verify that you have a complete four-part version number for your assembly in the AssemblyInfo file. Этот номер необходим для управления версиями в реестре Windows. This number is required for maintaining versioning in the Windows registry. Дополнительные сведения о номерах версий см. в разделе Управление версиями сборки. For more information about version numbers, see Assembly Versioning.

В меню Проект выберите пункт Свойства. On the Project menu, click Properties.

Откройте вкладку Компиляция. Click the Compile tab.

Установите флажок Регистрация для COM-взаимодействия. Select the Register for COM interop check box.

При построении проекта сборка автоматически регистрируется для COM-взаимодействия. When you build the project, the assembly is automatically registered for COM interop. При создании собственного приложения в Visual Studio 2005 можно использовать сборку, щелкнув команду Добавить ссылку в меню Проект. If you are building a native application in Visual Studio 2005, you can use the assembly by clicking Add Reference on the Project menu.

Создание вызываемой оболочки COM с использованием средств платформы .NET Framework To create a COM callable wrapper using .NET Framework tools

Это средство считывает метаданные сборки и добавляет в реестр необходимые записи. This tool reads the assembly metadata and adds the necessary entries to the registry. В результате этого клиенты COM получают возможность прозрачно создавать классы .NET Framework. As a result, COM clients can create .NET Framework classes transparently. Сборку можно использовать так, как если бы она была собственным COM-классом. You can use the assembly as if it were a native COM class.

Читайте также:  Инструкция для линукс минт
Оцените статью