Что такое MSIX?

MSIX — это современный формат упаковки приложений Windows. Он предоставляет любому Windows приложению надежную, чистую установку и удаление, автоматические обновления и доступ к функциям платформы Windows, которым требуется удостоверение пакета.

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

  • Windows API платформы, такие как push-уведомления, фоновые задачи и динамические плитки
  • Функции искусственного интеллекта, использующие модели, работающие на устройстве через Windows AI API
  • Хранение каналов распространения и обновления
  • Управление предприятиями с помощью Intune и Configuration Manager

Если вы не уверены, следует ли упаковывать приложение или какую модель упаковки использовать, начните с руководства по принятию решений по упаковке.

Ключевые особенности

  • Надежная установка и удаление. MSIX обеспечивает показатель успешной установки 99.96% в миллионах случаев и гарантирует чистое удаление без оставшихся файлов или записей в реестре.
  • Разностные обновления. Только измененные блоки размером 64 КБ загружаются при обновлении, минимизируя воздействие на сеть и время обновления.
  • Эффективность дискового пространства. Общие файлы между приложениями управляются Windows; каждое приложение остается независимым, поэтому обновления не влияют на другие приложения.
  • Контейнерное выполнение. Приложения выполняются в упрощенном контейнере с виртуальной файловой системой и реестром, а Windows виртуализирует или перенаправляет определенные записи файловой системы и реестра, чтобы снизить влияние системы. Общие сведения о контейнеризации MSIX.
  • Готово для корпоративного использования. Полная поддержка развертывания с помощью Intune, Configuration Manager и Enterprise Modern App Management CSP.

Начало работы

Цель Начните здесь
Упаковка нового приложения UWP Создание пакета MSIX из Visual Studio
Преобразование существующего установщика в MSIX Средство упаковки MSIX
Упаковать и подписать из командной строки Интерфейс командной строки WinApp
Доставка обновлений без Магазина Установщик приложений
Выбор между упакованным и распакованным Руководство по принятию решений по упаковке
Сведения о типах пакетов Типы пакетов MSIX
Развертывание на корпоративных устройствах Общие сведения о развертывании предприятия

Основные моменты

  • Интерфейс командной строки WinApp. Интерфейс командной строки WinApp предоставляет средства командной строки для полного рабочего процесса MSIX: создание сертификатов, создание пакетов и подписывание без выхода из терминала.
  • Упакуйте существующие приложения Windows. Используйте средство упаковки MSIX для создания пакета MSIX для любого приложения Windows без доступа к исходному коду.
  • Примените исправления во время выполнения. Платформа поддержки пакетов позволяет применять исправления совместимости к упакованным приложениям без изменения исходного кода.
  • Кроссплатформенный пакет SDK. Пакет SDK открытый код MSIX предоставляет API для проверки, проверки и распаковки пакетов MSIX на любой платформе.

Внутри пакета MSIX

Схема пакетов MSIX

Файлы полезной нагрузки

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

Файлы посадочных мест

Файлы footprint — это метаданные пакета и файлы инфраструктуры, описывающие, проверяющие или поддерживающие полезную нагрузку. К основным файлам посадочного места относятся:

  • AppxManifest.xml объявляет идентификатор пакета, зависимости, возможности, визуальные элементы и точки расширения.
  • AppxBlockMap.xml перечисляет файлы пакетов с криптографическими хэшами для каждого блока 64 КБ. Windows использует его для разностных обновлений и проверки целостности.
  • AppxSignature.p7x содержит подпись пакета. Перед установкой необходимо подписать все пакеты MSIX.

Другие файлы посадочных мест присутствуют только в том случае, если пакет использует соответствующую возможность. Например, AppxContentGroupMap.xml описывает группы содержимого для потоковой установки, и AppxMetadata\CodeIntegrity.cat содержит метаданные целостности кода.

API упаковки Windows различают файлы полезной нагрузки и файлы отпечатка.

Сведения об архитектуре пакета и поведении развертывания см. в разделе "Типы пакетов MSIX", "Тома хранилища пакетов" и "Регистрация пакета и его жизненный цикл".

Поддерживаемые платформы

Полный список поддерживаемых платформ см. в разделе "Функции MSIX" и поддерживаемые платформы.

Проверка, тестирование и устранение неполадок

Сведения о тестировании и распространенных ошибках см. в руководстве по устранению неполадок MSIX и обзоре проверки и тестирования MSIX.

Преимущества контейнеров приложений

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