You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多
文档控制台
免费开始使用

使用Add-AppxProvisionedPackage部署eappx失败问题咨询

关于使用Add-AppxProvisionedPackage部署加密eappx的问题

问题背景

  • 侧载加密eappx应用时,用Add-AppxPackage -Path ./Appfile.eappx可为当前用户正常安装,但需要实现全用户范围的部署
  • 使用Add-AppxProvisionedPackage部署普通未加密appx包正常,部署eappx时报错。

可正常执行的命令

Add-AppxProvisionedPackage -Online -PackagePath ./Appfile.appx -SkipLicense

执行失败的命令

Add-AppxProvisionedPackage -Online -PackagePath ./Appfile.eappx -SkipLicense

错误详情

Add-AppxProvisionedPackage : Add-AppxProvisionedPackage failed. Error code = 0x8051100f
At line:1 char:1
+ Add-AppxProvisionedPackage -Online -PackagePath ./Appfile.eappx  ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Add-AppxProvisionedPackage], COMException
    + FullyQualifiedErrorId : Microsoft.Dism.Commands.AddAppxProvisionedPackageCommand

错误码0x8051100F对应描述:OPC_E_ZIP_MISSING_END_OF_CENTRAL_DIRECTORY(ZIP文件缺少中央目录结尾)。

结论与解决方案

Add-AppxProvisionedPackage不支持直接部署加密的eappx文件

原因是eappx经过加密处理后,底层ZIP包结构发生了变化,而该命令仅设计用于解析未加密的标准appx/msix包,无法识别加密后的包结构,因此抛出ZIP格式相关错误。

要实现全用户部署加密应用,可选择以下方案:

  • 使用企业级部署工具:如Microsoft Intune或System Center Configuration Manager,这类工具原生支持全用户部署加密的LOB应用,能正确处理eappx的加密机制。
  • 解密后部署再加密:若持有应用的加密密钥和原始未加密包,可先解密eappx得到标准appx,用Add-AppxProvisionedPackage完成全用户部署后,再通过组策略或对应工具重新为应用启用加密保护(仅适用于拥有相关权限和原始资源的场景)。

内容的提问来源于stack exchange,提问作者Schaffer

火山引擎 最新活动