Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье показано, как создать компоненты пакета MSIX для упаковки приложения с помощью средств командной строки (без использования Visual Studio или средства упаковки MSIX).
Чтобы вручную упаковать приложение, необходимо создать файл манифеста пакета, добавить компоненты пакета, а затем запустить средство командной строки MakeAppx.exe для создания пакета MSIX.
Сначала подготовьтесь к упаковке
Если вы еще не сделали этого, ознакомьтесь с этим разделом о том, что необходимо знать перед упаковкой приложения.
Создание манифеста пакета
Создайте файл, присвойте ему имяappxmanifest.xml, а затем добавьте этот XML-файл в него.
Это базовый шаблон, содержащий элементы и атрибуты, необходимые пакету. Мы добавим в них значения в следующем разделе.
<?xml version="1.0" encoding="utf-8"?>
<Package
xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10"
xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10"
xmlns:uap10="http://schemas.microsoft.com/appx/manifest/uap/windows10/10"
xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities">
<Identity Name="" Version="" Publisher="" ProcessorArchitecture="" />
<Properties>
<DisplayName></DisplayName>
<PublisherDisplayName></PublisherDisplayName>
<Description></Description>
<Logo></Logo>
</Properties>
<Resources>
<Resource Language="" />
</Resources>
<Dependencies>
<TargetDeviceFamily Name="Windows.Desktop" MinVersion="" MaxVersionTested="" />
</Dependencies>
<Capabilities>
<rescap:Capability Name="runFullTrust"/>
</Capabilities>
<Applications>
<Application Id="" Executable=""
uap10:RuntimeBehavior="packagedClassicApp"
uap10:TrustLevel="mediumIL">
<uap:VisualElements DisplayName="" Description="" Square150x150Logo=""
Square44x44Logo="" BackgroundColor="" />
</Application>
</Applications>
</Package>
Замечание
Если пакет устанавливается в системах до Windows 10, версия 2004 (10.0; Сборка 19041), то используйте атрибут EntryPoint
вместо uap10:RuntimeBehavior
и uap10:TrustLevel
. Для получения дополнительной информации и примеров см. uap10, представленный в Windows 10 версии 2004 (10.0; Сборка 19041).
Заполните элементы пакета на уровне файла
Заполните этот шаблон сведениями, описывающими пакет.
Идентификационная информация
Ниже приведен пример элемента Identity с текстом заполнителя для атрибутов. Задайте атрибут ProcessorArchitecture
, x64
, x86
, arm
(т. е. 32 бит ARM), arm64
или neutral
<Identity Name="MyCompany.MySuite.MyApp"
Version="1.0.0.0"
Publisher="CN=MyCompany, O=MyCompany, L=MyCity, S=MyState, C=MyCountry"
ProcessorArchitecture="x64">
Замечание
Если вы зарезервировали имя приложения в Microsoft Store, вы можете получить имя и издатель с помощью Центра партнеров. Если вы планируете загрузить неопубликованное приложение в другие системы, вы можете указать собственные имена, если имя издателя, выбранное вами, соответствует имени сертификата, используемого для подписи приложения.
Свойства
Элемент Properties содержит 3 обязательных дочерних элемента. Ниже приведен пример узла Properties с текстом заполнителя для элементов. DisplayName — это имя вашего приложения, которое вы резервируете в магазине для приложений, которые загружаются в магазин.
<Properties>
<DisplayName>MyApp</DisplayName>
<PublisherDisplayName>MyCompany</PublisherDisplayName>
<Logo>images\icon.png</Logo>
</Properties>
Ресурсы
Ниже приведен пример узла Resources .
<Resources>
<Resource Language="en-us" />
</Resources>
Зависимости
Для классических приложений, для которых вы создаете пакет, всегда задавайте атрибут Name
на Windows.Desktop
.
<Dependencies>
<TargetDeviceFamily Name="Windows.Desktop" MinVersion="10.0.14316.0" MaxVersionTested="10.0.15063.0" />
</Dependencies>
Возможности
Для пакета, содержащего одно или несколько приложений с полным доверием, необходимо объявить runFullTrust
ограниченную функцию, как показано ниже. Для получения полных сведений и определения приложения с полным доверием найдите Уровень разрешений полного доверия в объявлениях возможностей приложения.
<Capabilities>
<rescap:Capability Name="runFullTrust"/>
</Capabilities>
Заполнение элементов уровня приложения
Заполните этот шаблон сведениями, описывающими приложение.
Элемент приложения
Для настольных приложений, для которых вы создаете пакет, настройте элемент Application следующим образом:
<Applications>
<Application Id="MyApp" Executable="MyApp.exe"
uap10:RuntimeBehavior="packagedClassicApp"
uap10:TrustLevel="mediumIL">
</Application>
</Applications>
Замечание
Если ваш пакет устанавливается в системах новее Windows 10, версия 2004 (10.0; Сборка 19041), то используйте атрибут EntryPoint
вместо uap10:RuntimeBehavior
и uap10:TrustLevel
. Для получения более подробной информации и примеров см. uap10, который был представлен в Windows 10, версии 2004 (10.0; Сборка 19041).
Визуальные элементы
Ниже приведен пример узла VisualElements .
<uap:VisualElements
BackgroundColor="#464646"
DisplayName="My App"
Square150x150Logo="images\icon.png"
Square44x44Logo="images\small_icon.png"
Description="A useful description" />
(Необязательно) Добавить незакрытые активы, основанные на целях
Ресурсы, связанные с целями, используются для значков и плиток, отображаемых в панели задач Windows, представлении задач, ALT+TAB, функции привязки и в нижнем правом углу плиток "Пуск". Дополнительные сведения см. здесь.
Получите правильные 44x44 изображения, а затем скопируйте их в папку, содержащую изображения (т. е. ресурсы).
Для каждого изображения 44x44 создайте копию в той же папке и добавьте в имя файла .targetsize-44_altform-unplated. У вас должно быть две копии каждого значка, каждая из которых называется определенным образом. Например, после завершения процесса папка ресурсов может содержать MYAPP_44x44.png и MYAPP_44x44.targetsize-44_altform-unplated.png.
Замечание
В этом примере значок с именем MYAPP_44x44.png — это значок, на который вы будете ссылаться в
Square44x44Logo
атрибуте логотипа пакета MSIX.В файле манифеста задайте
BackgroundColor
для каждого значка, который вы делаете прозрачным.Перейдите к следующему подразделу, чтобы создать новый файл индекса ресурсов пакета.
Создание файла индекса ресурсов пакета (PRI) с помощью MakePri
Если вы создаете целевые ресурсы, как описано в приведенном выше разделе, или вы изменяете любые визуальные ресурсы приложения после создания пакета, вам потребуется создать новый PRI-файл.
На компьютере с Windows, в зависимости от пути установки пакета SDK, вот где находится MakePri.exe:
- x86: C:\Program Files (x86)\Windows Kits\10\bin\<build number>\x86\makepri.exe
- x64: C:\Program Files (x86)\Windows Kits\10\bin\<номер сборки>\x64\makepri.exe
Версия ARM этого средства отсутствует.
Откройте командную строку или окно PowerShell.
Измените каталог в корневую папку пакета, а затем создайте файл priconfig.xml, выполнив команду
<path>\makepri.exe createconfig /cf priconfig.xml /dq en-US
.Создайте файлы resources.pri с помощью команды
<path>\makepri.exe new /pr <PHYSICAL_PATH_TO_FOLDER> /cf <PHYSICAL_PATH_TO_FOLDER>\priconfig.xml
.Например, команда для приложения может выглядеть следующим образом:
<path>\makepri.exe new /pr c:\MYAPP /cf c:\MYAPP\priconfig.xml
Упаковайте приложение с помощью инструкций на следующем шаге.
Тестирование приложения перед упаковкой
Вы можете развернуть распаковано приложение и протестировать его перед упаковкой или подписью. Для этого выполните командлет ниже из окна PowerShell. Обязательно передайте файл манифеста приложения, расположенный в корневом каталоге пакета со всеми другими компонентами пакета:
Add-AppxPackage –Register AppxManifest.xml
Как только это будет сделано. Приложение должно быть развернуто в системе, и вы можете протестировать его, чтобы убедиться, что все работает перед упаковкой. Чтобы обновить .exe или .dll файлы приложения, замените существующие файлы в пакете новыми, увеличьте номер версии в AppxManifest.xml, а затем снова выполните приведенную выше команду.
Упакуйте ваши компоненты в MSIX
Следующим шагом является использование MakeAppx.exe для создания пакета MSIX для приложения. Makeappx.exe входит в состав пакета SDK для Windows и если вы установили Visual Studio, его можно легко получить с помощью командной строки разработчика для Visual Studio.
См. Создание пакета или комплекта MSIX с помощью средства MakeAppx.exe
Замечание
Упакованное приложение всегда работает от имени интерактивного пользователя, и все диски, на которые устанавливается упакованное приложение, должны быть отформатированы в NTFS.