Что такое формат файла APPX?
Формат .appx был представлен вместе с Windows 8 и Windows Phone 8.1 как формат распространения файлов для приложений, доступных в Microsoft Store. Пакет приложения представляет собой файл-контейнер, соответствующий стандарту Open Packaging Convention (OPC), описывающий иерархическую структуру для хранения данных и других ресурсов в формате ZIP-архива. Внутри каждый архив .appx включает три обязательных файла: AppxManifest.xml (идентификатор приложения, возможности и точки входа), AppxBlockMap.xml (карта хешей SHA-256 для проверки целостности на уровне блоков) и AppxSignature.p7x (криптографическая подпись пакета).
Отправка файлов .appx в Microsoft Store
Файл .appx - это архив, содержащий приложение в его окончательном виде, готовое к распространению и установке. Отправка пакета .appx в Microsoft Store требует от разработчика выбора имени приложения, указания сведений о модели продаж и списка доступных функций. Каждый отправленный пакет должен пройти процедуру тестирования на безопасность и совместимость. Для отправки в Store файл .appx обычно упаковывается в файл .appxupload, который также может содержать дополнительные символы отладки .pdb.
Преимущества пакетов .appx
Упрощенное распределение пакетов между компьютерами, планшетами и телефонами - устройствами с различными характеристиками - было основной целью создания формата .appx. Традиционные приложения полагались на громоздкие установщики, известные тем, что вызывали проблемы в мобильных системах. .appx решил эту проблему, запуская приложения внутри песочницы UWP (AppContainer), при этом разрешения объявляются заранее в манифесте, а не предоставляются во время установки. Несколько пакетов для конкретных архитектур могут быть сгруппированы в один .appxbundle для единой отправки в Store.
Дополнительная информация
Формат .appx был в значительной степени заменен форматом .msix с 2018 года, который расширяет тот же контейнер OPC/ZIP улучшенной надежностью и функциями корпоративного развертывания. Пакеты можно установить в Windows через PowerShell с помощью Add-AppxPackage или через встроенный «Установщик приложений». Загрузка файлов .appx из сторонних источников (sideloading) требует включения «Режима разработчика» или настройки «Неопубликованные приложения». Максимальный размер файла .appx составляет 2 ГБ.
Безопасность и защита
РИСК: MEDIUMAPPX - это реальный установщик, который запускает код, поэтому он несет обычный риск «установки программного обеспечения», но он безопаснее по своей конструкции, чем обычный EXE: пакеты должны быть цифровой ПОДПИСАНЫ, и Windows откажется устанавливать неподписанный или недоверенный пакет, устанавливает его в песочницу и чисто удаляет. Практическая опасность заключается в том, что пользователи отключают защиту для установки неопубликованных приложений - просьба включить режим разработчика и установить сертификат незнакомца в «Доверенные корневые центры» для принудительной установки недоверенного пакета - это именно то, как проникает вредоносное ПО. Устанавливайте APPX/MSIX только из источников, которым вы доверяете; проверяйте, кто подписал пакет. Сначала изучите содержимое, открыв его как ZIP с помощью 7-Zip.
Детали формата
в двух словахПрограммы, открывающие файлы APPX
Технические подробности
глубокая спецификация| Формат контейнера | Архив Open Packaging Convention (OPC) на базе ZIP |
| Магические байты | 50 4B 03 04 («PK») со смещением 0 - стандартная сигнатура локального заголовка файла ZIP |
| MIME-тип | application/appx |
| Файл манифеста | AppxManifest.xml - объявляет идентификатор приложения, версию, возможности, точки входа и целевые семейства устройств |
| Файл карты блоков | AppxBlockMap.xml - карта хешей SHA-256, охватывающая каждый блок размером 64 КБ для проверки целостности |
| Файл подписи | AppxSignature.p7x - цифровая подпись PKCS #7; пакет должен быть подписан для установки в Windows |
| Максимальный размер пакета | 2 ГБ |
| Целевые платформы | Windows 8, 8.1, 10, 11; Windows Phone 8.1 (устаревшие приложения UWP/WinRT) |
| Модель песочницы | UWP AppContainer - приложение запускается в изолированном процессе с возможностями, объявленными в AppxManifest.xml |
| Команда установки | Add-AppxPackage (PowerShell) или графический интерфейс «Установщика приложений»; нет традиционной цепочки установщика MSI |
| Инструмент упаковки | MakeAppx.exe (командная строка Windows SDK) или мастер упаковки Microsoft Visual Studio |
| Требование для неопубликованных приложений | Требуется включение «Режима разработчика» или «Неопубликованных приложений» в настройках Windows (или через групповую политику в организациях) |
| Вариант для загрузки в Store | .appxupload - упаковывает .appx с дополнительными файлами символов .pdb для отправки в Microsoft Store |
| Вариант бандла | .appxbundle - группирует несколько пакетов .appx для разных архитектур в одну отправку для Store |
| Формат-преемник | .msix - заменил .appx, начиная с Windows 10 версии 1809 (октябрь 2018 г.) |
| Требование к подписи | Все пакеты .appx должны иметь цифровую подпись; самоподписанные сертификаты принимаются для разработки и тестирования |
| Выпущен | 2012 (Windows 8); largely superseded by MSIX since 2018 |
| Спецификация | learn.microsoft.com |
Конвертации APPX
Вопросы и ответы сообщества
спрошено пользователямиВопросов пока нет - станьте первым, кто спросит о файлах APPX.
Часто задаваемые вопросы
Как установить файл APPX?
Add-AppxPackage -Path app.appx в PowerShell. Пакет должен быть подписан/доверен, а установка неопубликованных приложений должна быть разрешена.