Add-AppxProvisionedPackage не работает в PowerShell (x86) - PullRequest
0 голосов
/ 28 мая 2020

Я пытаюсь создать установщик для загрузки приложения Windows 10. В какой-то момент установщик вызывает PowerShell (x86) для выполнения следующей команды:

Add-AppxProvisionedPackage -Online -PackagePath $pkgPth -DependencyPackagePath $dp1Pth,$dp2Pth,$dp3Pth -SkipLicense

Вот где я получаю эту ошибку:

System.Runtime.InteropServices.COMException (0xC1570108 ): Пакет не соответствует требованиям для подготовки к целевому образу.

Когда я пытаюсь выполнить команду с 64-битной версией PowerShell, установка проходит нормально.

Пакет, который я создал, представляет собой пакет x86. Все пути зависимостей указывают на зависимости x86. Просматривая документацию Microsoft для командлета Add-AppxProvisionedPackage , я не вижу ничего, что могло бы указывать на проблему с версией x86.

У меня включена загрузка неопубликованных приложений, и я установил разработчик сертификат (и сообщение об ошибке не предполагает, что это все равно будет проблемой). Я также запускаю PowerShell как администратор.

Что-то мне не хватает при сборке пакета (поскольку сообщение об ошибке заставит меня поверить)? Или чего-то не хватает в моем вызове Add-AppxProvisionedPackage?

ОБНОВЛЕНИЕ: я попытался написать командный файл для вызова DISM вместо использования PowerShell. Он работает, пока я вручную вызываю пакетный файл, но когда установщик вызывает пакетный файл, я получаю ту же ошибку 0xC1570108, что и при использовании PowerShell (x86).

Я не уверен, что это актуально, но я использую NSIS для своего установщика и вызываю командный файл следующим образом:

nsExec::ExecToLog '$INSTDIR\path\mybat.bat $SOME_ARGS'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...