Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье мы рассмотрим, как устранить неполадки среды выполнения в контейнере MSIX. Сами по себе контейнеры MSIX являются относительно простыми и понятными. По мере того как всё больше приложений выполняется внутри того же удостоверения пакета с помощью пакетов модификаций, виртуальный реестр и виртуальная файловая система будут накладываться в том порядке, в каком установлены приложения.
Порядок установки этих приложений может, например, привести к непредвиденным проблемам, когда предполагаемые разделы реестра перезаписываются, а файлы заменяются.
Чтобы помочь в диагностике таких проблем, Invoke-CommandInDesktopPackage — это командлет PowerShell, который можно использовать для запуска приложения в контейнере MSIX. Это позволяет пользователям запускать командную строку, редактор реестра, PowerShell в контейнере MSIX и просматривать объединенную файловую систему и объединенный куст реестра.
Это важно
Invoke-CommandInDesktopPackage требует, чтобы устройство было в режиме разработчика для сборок Windows 10 до 18922 года.
Просмотр объединенной файловой системы
Чтобы просмотреть файловую систему, наблюдаемую приложениями, работающими в контейнере, используйте следующую команду PowerShell:
Invoke-CommandInDesktopPackage -AppId "AppPackage1" -PackageFamilyName "Contoso.AppPackage1_8h66172c634n0" -Command "cmd.exe" -PreventBreakaway
Приведенная выше команда запустит экземпляр cmd.exe в контейнере пакета Contoso.AppPackage1_8h66172c634n0 . При выполнении командной строки из контейнера можно просматривать файловую систему и просматривать объединенные файлы.
Просмотр объединенного hive реестра
Чтобы просмотреть полный раздел реестра устройств, как это видят приложения, работающие внутри контейнера, используйте следующую команду PowerShell:
Invoke-CommandInDesktopPackage -AppId "AppPackage1" -PackageFamilyName "Contoso.AppPackage1_8h66172c634n0" -Command "regedit.exe" -PreventBreakaway
Приведенная выше команда запустит редактор реестра в контексте контейнера пакета Contoso.AppPackage1_8h66172c634n0 . Здесь можно просмотреть локальные компьютеры и текущие разделы реестра пользователей и определить возможных правонарушителей, вызывающих проблему.
Подсказка
Используйте флаг "-PreventBreakaway" при использовании Invoke-CommandInDesktopPackage, если вы хотите запустить последующие процессы в том же контейнере. В противном случае, любой последующий запуск выйдет за пределы контейнера.
Замечание
Не все приложения можно запустить в контейнере. Например, explorer.exe выйдет за пределы контейнера.