Как конвертировать приложение Windows Desktop в универсальное приложение для Windows

Оглавление:

Как конвертировать приложение Windows Desktop в универсальное приложение для Windows
Как конвертировать приложение Windows Desktop в универсальное приложение для Windows

Видео: Как конвертировать приложение Windows Desktop в универсальное приложение для Windows

Видео: Как конвертировать приложение Windows Desktop в универсальное приложение для Windows
Видео: EVERNOTE в 2022 году. Стоит ли пользоваться? - YouTube 2024, Май
Anonim
Благодаря обновлению Anniversary Update от Windows 10 Microsoft позволяет разработчикам конвертировать традиционные настольные приложения Windows в приложения Universal Platform Platform (UWP). Но любой может сделать это с помощью любого приложения, а не только разработчиков.
Благодаря обновлению Anniversary Update от Windows 10 Microsoft позволяет разработчикам конвертировать традиционные настольные приложения Windows в приложения Universal Platform Platform (UWP). Но любой может сделать это с помощью любого приложения, а не только разработчиков.

С конвертером Windows 10 просто дайте ему файл.msi или.exe, и он выплюнет пакет.appx. Затем вы можете отключить это приложение на своем ПК или, если вы разработчик приложения, вы можете отправить полученное UWP-приложение в Windows Store. Эта функция будет доступна для всех с обновлением Anniversary Update от Windows 10, в результате чего многие «устаревшие» приложения будут загружены в Windows Store.

Почему вы хотите сделать это?

Эта функция является конечным результатом проекта Centennial от Microsoft, который предназначен для переноса этих «старых» настольных приложений Win32 и.NET Windows в Windows Store и новую универсальную платформу Windows.

Вы можете задаться вопросом, почему кто-то хочет конвертировать настольное приложение в новое приложение UWP. Во-первых, в хранилище Windows допускаются только приложения UWP. Это позволяет разработчикам получать гораздо больше внимания от своих приложений, не говоря уже о установке с одним щелчком мыши, простой покупке и автоматических обновлениях.

Новая платформа приложений UWP от Microsoft изолирована, но приложения для настольных компьютеров, которые вы конвертируете, не являются. Эти приложения будут иметь полный доступ к вашей системе, как и традиционное настольное приложение. Как говорится в документации Microsoft: «Как приложение UWP, ваше приложение может делать то, что может сделать как классическое настольное приложение. Он взаимодействует с виртуализированным представлением реестра и файловой системы, которые неотличимы от реального реестра и файловой системы ».

Ограничения

Здесь есть некоторые важные ограничения. Во-первых, вы можете сделать это только в обновлении Windows 10 Anniversary. На данный момент он будет работать с Windows 10 Insider Preview build 14316 и выше, поэтому вам нужно будет присоединиться к программе Windows Insider и использовать сборку Insider Preview из Windows 10.

Эта функция также требует либо выпусков Professional, либо Enterprise для Windows 10. Пользователи Windows 10 Home не смогут использовать Desktop App Converter. Начиная с версии 14316, он работал только на Windows 10 Enterprise, но идет поддержка Windows 10 Professional. В настоящее время этот инструмент можно использовать только в 64-разрядных версиях Windows, и полученный пакет AppX может быть установлен только в 64-разрядных версиях Windows. Это изменит будущие инсайдерские сборки Windows 10.

Полученные приложения предназначены для ПК с Windows 10. Они не будут работать на мобильных устройствах под управлением Windows 10 Mobile, Xbox One, HoloLens, Surface Hub и других платформах Windows 10, которые запускают приложения UWP. Однако, если вы разработчик, Microsoft предлагает путь к тому, чтобы ваше настольное приложение использовалось в кросс-платформенном приложении UWP: «Если вы решите перенести все функциональные возможности вашего приложения из раздела полного доверия приложения и в раздел приложения, то ваше приложение сможет работать на любом устройстве Windows 10 ».

Однако некоторые типы поведения приложения не поддерживаются. Приложение не может требовать, чтобы оно выполнялось как администратор или использовало другие типы низкоуровневого доступа к системе. Microsoft предоставляет список поведения, которые не разрешены.

Как настроить конвертер рабочего стола

Предполагая, что вы используете достаточно новую сборку Windows 10 Insider Preview, вы можете загрузить и установить Desktop App Converter с сайта разработчика Microsoft. Загрузите файлы DesktopAppConverter.zip и BaseImage-14316.wim. Извлеките загруженный файл DesktopAppConverter.zip в папку на вашем компьютере и поместите файл BaseImage в тот же каталог. (Если имеется новая версия Windows 10, вы должны увидеть новый файл BaseImage. Вам нужно будет использовать файл BaseImage с тем же номером версии, что и установленная версия Windows 10.)

Вам также потребуется загрузить и установить Windows 10 SDK.

Затем откройте окно PowerShell в качестве администратора. Для этого откройте меню «Пуск», найдите «PowerShell», щелкните его ярлык правой кнопкой мыши и выберите «Запуск от имени администратора».
Затем откройте окно PowerShell в качестве администратора. Для этого откройте меню «Пуск», найдите «PowerShell», щелкните его ярлык правой кнопкой мыши и выберите «Запуск от имени администратора».

Измените политику выполнения PowerShell, выполнив следующую команду. Согласитесь на изменение путем ввода

y

после этого.

Set-ExecutionPolicy bypass

Выполните приведенную ниже команду, заменив

C:UsersNAMEDownloadsDesktopAppConvertor

с указанием пути к каталогу на вашем компьютере:

cd -Path C:UsersNAMEDownloadsDesktopAppConvertor

Настройте Desktop App Converter, выполнив следующую команду:

.DesktopAppConverter.ps1 -Setup -BaseImage.BaseImage-14316.wim

Если вас попросят перезагрузить при выполнении любой из этих команд, перезагрузите компьютер и снова запустите команду.

Image
Image

Как конвертировать настольное приложение

Теперь вы можете запустить

DesktopAppConverter.ps1

скрипт из окна PowerShell администратора для преобразования настольного приложения в приложение UWP в одной команде. Для этого вам понадобится установщик приложения. В качестве примера мы будем использовать VLC здесь.

Чтобы просмотреть подробный список параметров, вы можете запустить следующую команду в любое время:

get-help.DesktopAppConverter.ps1 -detailed

Вот команда, которую вы можете использовать и настроить для своего приложения:

.DesktopAppConverter.ps1 -ExpandedBaseImage C:ProgramDataMicrosoftWindowsImagesBaseImage-14316 –Installer C:InstallerMyApp.exe -InstallerArguments '/S' -Destination C:OutputMyApp -PackageName 'MyApp' -Publisher 'CN=' -Version 0.0.0.1 -MakeAppx -Verbose

Вам нужно будет настроить команду, чтобы добавить собственное имя издателя, версию, имя пакета и указать его в файле установщика и в целевом каталоге, который вы предпочитаете.

-InstallerArguments '/S'

здесь передается

/S

переключитесь на установщик, что позволяет установить множество установщиков приложений без какого-либо ввода пользователем. Приложения должны быть установлены без какого-либо ввода пользователем, или вы не можете их преобразовать.

Установщик приложения должен находиться в своем собственном каталоге без каких-либо других файлов, так как файлы в том же каталоге, что и установщик, будут скопированы в полученный пакет.appx.

Например, мы используем VLC здесь, поэтому вот команда, которую мы будем использовать:

.DesktopAppConverter.ps1 -ExpandedBaseImage C:ProgramDataMicrosoftWindowsImagesBaseImage-14316 –Installer C:UserschrisDownloadsvlcvlc-2.2.2-win32.exe -InstallerArguments '/S' -Destination C:OutputVLC -PackageName 'VLC' -Publisher 'CN=VideoLAN' -Version 0.2.2.2 -MakeAppx -Verbose

Инструмент предоставит вам пакет.appx, который является версией UWP приложения.
Инструмент предоставит вам пакет.appx, который является версией UWP приложения.
Image
Image

Как установить приложение без подписи

Обычно вы должны подписывать приложения с действительной подписью, прежде чем их можно будет установить. Корпорация Майкрософт рекомендует создавать самозаверяющий сертификат и подписывать приложение с этим на вашем компьютере. Вы можете сделать это, используя приведенные ниже инструкции, если хотите.

Однако, если вы просто хотите установить приложение на свой компьютер, вы можете сделать это самостоятельно быстрее, не путаясь с любыми сигнатурами. Windows 10 позволяет устанавливать приложения без их подписания, если вы устанавливаете «неупакованное» приложение из каталога.

Для этого откройте окно PowerShell в качестве администратора и выполните следующую команду:

Add-AppxPackage -Path C:Path oAppxManifest.xml -Register

Файл AppxManifest.xml находится рядом с файлом Application.appx в указанном каталоге вывода.

Теперь вы можете запустить приложение из меню «Пуск». Это будет «приложение Windows», а не «настольное приложение», но в противном случае оно будет выглядеть и работать как обычное настольное приложение.

Image
Image

Как подписать и установить приложение

Вам не нужно следовать этим инструкциям, если вы уже установили приложение. Это сложнее.

Обычно вы можете установить пакет.appx, если он имеет действительную подпись. Корпорация Майкрософт рекомендует использовать приложение signtool.exe, входящее в комплект поставки Windows 10 SDK, для создания самозаверяющего сертификата, который позволит вам установить и протестировать приложение на вашем собственном компьютере.

Просто откройте окно командной строки в качестве администратора и выполните следующие команды, чтобы создать самозаверяющий сертификат и подписать пакет.appx с ним:

cd 'C:Program Files (x86)Windows Kits10inx64'

MakeCert.exe -r -h 0 -n 'CN=Publisher' -eku 1.3.6.1.5.5.7.3.3 -pe -sv my.pvk my.cer

pvk2pfx.exe -pvk my.pvk -spc my.cer -pfx my.pfx

signtool.exe sign -f my.pfx -fd SHA256 -v C:Path oapplication.appx

Обратите внимание, что указанный вами издатель - это

'CN=Publisher'

- нужно соответствовать издателю, указанному выше, при создании файла AppX. Итак, продолжая наш пример VLC сверху, нам нужно будет использовать

'CN=VideoLAN'

Вам будет предложено ввести пароль. Вы можете просто оставить пароль пустым.

Теперь вы можете установить пакет.appx в окне PowerShell (Administrator) с помощью команды Add-AppxPackage:
Теперь вы можете установить пакет.appx в окне PowerShell (Administrator) с помощью команды Add-AppxPackage:

Add-AppxPackage C:Path oapplication.appx

Эта функция может использоваться кем угодно, но только разработчики - и, возможно, некоторые системные администраторы - захотят пойти по этому маршруту. К счастью, процесс очень прост для разработчиков.

Рекомендуемые: