You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从独立MSIX包创建相关集,主包AppxManifest需做哪些修改?

主包AppxManifest.xml修改步骤

1. 补充命名空间声明

找到根节点<Package>,添加以下命名空间属性,同时将这两个命名空间加入IgnorableNamespaces列表:

<Package
  xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10"
  xmlns:uap3="http://schemas.microsoft.com/appx/manifest/uap/windows10/3"
  xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities"
  IgnorableNamespaces="uap uap3 rescap">

注:如果原有根节点已有其他命名空间和IgnorableNamespaces值,只需要追加上述缺失的部分即可

2. 开启可选包支持

在<Properties>节点下添加uap3命名空间下的允许可选包配置:

<Properties>
  <!-- 原有其他配置保持不变 -->
  <uap3:AllowOptionalPackages>true</uap3:AllowOptionalPackages>
</Properties>

3. 添加相关集权限

你报错中提到的centennial是微软桌面桥项目的内部代号,指代包含Win32可执行文件的MSIX包,这类包组成相关集需要额外添加受限权限,在<Capabilities>节点下添加以下配置即可:

<Capabilities>
  <!-- 原有其他权限保持不变 -->
  <rescap:Capability Name="relatedSetPackages" />
</Capabilities>
配套校验规则

修改完成后请确认以下规则全部满足,否则仍然会出现安装报错:

  • 主包和可选包的Publisher属性值完全一致
  • 主包和可选包的版本号前三位(主版本.次版本.修订号)完全匹配,只有第四位内部版本号可以不同
  • 可选包中MainPackageDependency的Name、Publisher属性与主包的对应属性完全一致
  • 两个包的处理器架构必须匹配(比如主包是x86,可选包不能是x64)
过往错误操作原因说明
  • 之前添加的PackageDependency是框架包依赖声明,和相关集可选包逻辑完全无关,所以无效
  • AppxBundleManifest.xml是MSIX捆绑包(.msixbundle)的元数据文件,单个MSIX包不需要该文件,所以打包时会被作为无关的元数据文件(也就是提示中的footprint file)忽略
  • Advanced Installer的相关集配置仅在创建捆绑包场景下才会显示,单包配置界面不展示相关选项是正常情况

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

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 13:06:02