Вывод приложения, созданного с помощью WinUI 3, чтобы его можно было запустить в автономном формате EXE

Страница обновлена :
Дата создания страницы :

Операционная среда

Виндоус
  • Windows 11
Визуальная студия
  • Visual Studio 2022 версии 17.12.3
.СЕТЬ
  • .NET 8
Интерфейс WinUI
  • Интерфейс WinUI 3
Пакет SDK для приложений для Windows
  • 1.6.3 (1.6.241114003)

Необходимые условия

В некоторых случаях могут подойти и более ранние версии.

Виндоус
  • Windows 10
  • Windows 11
Визуальная студия
  • Visual Studio 2022 версии 17.12 или более поздней
.СЕТЬ
  • .NET 8 или более поздней версии
Пакет SDK для приложений для Windows
  • 1.6.0 или более поздняя версия

Сначала

Приложения, созданные с помощью WinUI 3, обычно являются упакованными приложениями, которые могут выполняться только при определенных обстоятельствах. Чтобы запустить его, вам нужно скачать и установить его из Microsoft Store. Существует также метод распространения файлов напрямую, но он требует несколько сложных процедур и настроек, и не подходит для распространения среди неопределенного количества людей. Вместо этого вы можете запустить приложение в среде с высоким уровнем безопасности.

Метод, представленный на этот раз, позволяет создать EXE-файл неупакованным методом, чтобы вы могли раздать EXE-файл пользователю как есть и выполнить его. Если вы хотите, чтобы приложение, написанное с помощью WindowsForm или WPF, выглядело так же, как вы хотите, чтобы оно распространялось, этот подход является правильным решением.

Внимание

Продукты, связанные с WinUI 3, постоянно обновляются, поэтому они могут работать плохо из-за разных версий. Я думаю, что эта процедура будет работать, если вы соответствуете версиям IDE и SDK, но если она не работает хорошо, пожалуйста, обратите внимание на различные версии.

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

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

Обновление Visual Studio 2022

В принципе, нет никаких проблем, если у вас установлена последняя версия. По крайней мере, версия в начале этой статьи. Запустите его из меню Visual Studio или запустите «Visual Studio Installer» из меню «Пуск», чтобы обновить его.

Установка пакета SDK для приложений Windows (Windows App SDK)

Пакет SDK для приложений Windows, включенный в установку Visual Studio, устарел и должен быть обновлен. Пожалуйста, скачайте и установите его со следующего сайта.

После выполнения пакет будет запущен и обновлен без вопросов.

Создание проекта

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

Обновление версии пакета с помощью NuGet

Убедитесь, что версия "Microsoft.WindowsAppSDK" по крайней мере соответствует версии, описанной в начале этой статьи. Нет никаких проблем с тем, что включенный "Microsoft.Windows.SDK.BuildTools" является актуальным.

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

Отключите пакет

Откройте свойства проекта.

В категории "Приложение > упаковка" есть пункт под названием "Включена упаковка MSIX для этого проекта", поэтому снимите с него галочку.

Попробуйте

Если вы посмотрите на отладочное выполнение панели инструментов, я думаю, что это "XXXX (Package)". Вы можете изменить его на "XXXX (Unpackd)" из выбранного варианта, поэтому измените его на Unpackaged.

После того, как вы его изменили, попробуйте запустить его. Если вы можете запустить его без ошибок, проблем нет.

Создание EXE-файла

Вы можете распространять EXE-файл, который генерируется после сборки, но на этот раз я выведу исполняемый файл из меню "Publish".

Кстати, для того, чтобы процесс "publish" был успешно выполнен с unpacked, вам нужно использовать команду ". NET Настольная разработка.

Щелкните правой кнопкой мыши проект и выберите «Опубликовать».

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

В разделе Дополнительные действия выберите Изменить.

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

Имя параметра, значение настройки, примечания
конфигурация Релиз xXX Пожалуйста, измените его в соответствии с вашим профилем. Если это win-x64, то это Release x64.
Целевая платформа Согласование с текущим проектом
Режимы развертывания Замкнутый В текущей спецификации работает только "самодостаточный".
Целевая среда выполнения win-xXX Пожалуйста, измените его в соответствии с вашим профилем. Если это win-x64, сделайте его win-x64.
Целевое местоположение Оставьте значение по умолчанию
Создание одного файла от Согласно текущей спецификации, он не может быть выполнен, даже если он создан в одном файле.
ReadyToRun произвольный Ознакомьтесь с ним, если хотите повысить производительность.
Обрезка неиспользуемого кода произвольный Отметьте его, если хотите уменьшить размер файла. Обратите внимание, что она не будет работать в зависимости от создания программы.

Когда все будет готово, нажмите кнопку «Отправить».

Убедитесь, что публикация прошла успешно без ошибок.

Вы можете открыть опубликованный файл, нажав на ссылку «Целевое местоположение».

Если вы можете запустить EXE-файл и запустить его, все в порядке. Если вы хотите распространить, вам нужно взять полный набор файлов в эту папку. 「. Можно удалять файлы, которые не нужны для выполнения, такие как файлы ".pdb".