Общий контейнер пакетов

Контейнеры общих пакетов позволяют ИТ-специалистам создать общий контейнер среды выполнения для упакованного приложения MSIX. Совместное использование объединенного представления виртуальной файловой системы и виртуального реестра позволяет получить доступ к корневым файлам и состоянию другого пакета. Начиная с Windows 10 Insider Preview Build 21354, ИТ-специалисты смогут управлять тем, какие приложения могут быть в каком контейнере важно для преобразования MSIX из устаревших установщиков. Понятие общего контейнера используется в основном для настройки, совместного использования необходимого программного обеспечения и поддержки надстроек для преобразованных приложений. Обратите внимание, что это корпоративная функция, и для ее использования потребуются права администратора.

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

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

Предварительное требование

Для использования этой функции предприятиям потребуется администратор на устройстве. Кроме того, все пакеты должны быть. msix пакеты. Чтобы упаковать установщики как пакет MSIX, посетите наш пакет создания из существующей документации по установщику.

Определение контейнера общего пакета

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

<?xml version="1.0" encoding="utf-8"?> 
<AppSharedPackageContainer Name="ContosoContainer"> 
    <PackageFamily Name="Fabrikam.MainApp_8wekyb3d8bbwe" /> 
    <PackageFamily Name="Contoso.MainApp_8wekyb3d8bbwe" /> 
    <PackageFamily Name="ContosoCustomize_7xekyb3d8ccde" /> 
</AppSharedPackageContainer>   

При наличии файла Definition. XML можно использовать следующие команды PowerShell для развертывания, сброса, обновления и удаления контейнера общих пакетов с устройства. Обратите внимание, что все остальные команды развертывания приложения остаются неизменными (т. е. Установка пакетов)

Команды PowerShell

Развертывание определения контейнера общего пакета

Add-AppSharedPackageContainer <path> 

Эта команда развертывает общий контейнер пакета определения для конкретного пользователя. Ниже приведены необязательные параметры.

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

Удаление общего контейнера пакетов

Remove-AppSharedPackageContainer -Name <name>  

Эта команда удаляет определения контейнера общих пакетов для конкретного пользователя. Ниже приведены необязательные параметры.

Параметр Описание
форцеаппликатионшутдовн Закрывает все пакеты в контейнере общих пакетов.
AllUsers Удалите соответствующие пакеты, развернутые для любого пользователя.
депровисионфораллусерс Отменяет подготавливает контейнер для всех пользователей.

Получение сведений о контейнере общего пакета

Get-AppSharedPackageContainer -Name <name> 

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

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

Сброс контейнера общих пакетов

Reset-AppSharedPackageContainer -Name <name>  

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