应用打包在Windows上为应用提供可预测的安装、更新和服务模型。 WinUI 3 应用默认打包,而许多其他应用类型则不打包。 依赖于包标识的功能包括后台任务、推送通知、Windows 10动态磁贴、自定义上下文菜单扩展、共享目标和其他扩展点。 打包还支持更简洁的部署、可靠的更新,以及通过Microsoft Store和企业部署工具等渠道进行分发。
部署确定如何将应用和任何运行时依赖项分发给用户。 本概述可帮助你选择打包模型、分发路径,以及对于使用 Windows 应用 SDK 的应用,选择依赖框架的部署模型或自包含部署模型。
选择打包、分发和部署选项
- 若要比较打包模型、具有外部位置的打包模型和未打包模型,请参阅 打包概述。
- 若要比较Microsoft Store、企业和直接下载路径,请参阅“选择分发路径”。
- 若要比较依赖于框架的部署和自包含Windows 应用 SDK部署,请参阅Windows 应用 SDK部署概述。
- 有关分发功能的当前状态,包括
ms-appinstaller协议,请参阅Windows应用分发功能的当前状态。
Windows应用部署方案快速参考
下表将常见的分发目标映射到打包和Windows 应用 SDK运行时选项。 有关代码签名成本和移动设备管理(MDM)支持,请参阅 “选择分发路径”。
| 分发目标 | 打包模式 | 运行时模式 | 目标计算机上的 Windows 应用 SDK 运行时环境 |
|---|---|---|---|
| 发布到 Microsoft Store | 封装(MSIX) | 依赖于框架 | 由商店自动安装 |
| 从网站直接下载 MSIX (使用 应用安装程序) | 封装(MSIX) | 任一个 | 如果是自包含,则捆绑发布;如果依赖框架,则框架包必须随应用一起分发 |
| 通过Microsoft Intune或Microsoft Configuration Manager(ConfigMgr)进行企业部署 | 已打包 (MSIX) 或使用外部位置打包(Windows 10 版本 2004、内部版本 19041 或更高版本) | 任一个 | 打包的应用可以声明框架依赖项;使用外部位置打包的依赖框架的应用必须单独部署运行时 |
| 使用 WiX 或 Inno 安装程序直接下载 | 使用外部位置打包或未打包 | 建议自包含 | 由独立部署捆绑 |
| Xcopy 或 zip 存档(无安装程序) | 未包装的 | 自包含 | 由独立部署捆绑 |
| 依赖于框架的下载(最小占用空间) | 未包装的 | 依赖于框架 | 必须预先安装或单独部署 |
| 持续集成项目或内部测试 | 任一个 | 自包含简化了计算机设置 | 如果自包含,则捆绑;如果依赖于框架,则需要运行时安装 |
注意
PublishSingleFile (单文件 EXE)适用于未打包的自包含.NET WinUI 3 应用(Windows 应用 SDK 1.5 及更高版本)。 它生成一个可分发 EXE,用于在首次启动时将依赖项提取到临时目录。 打包应用(MSIX 或使用外部位置打包)不支持 PublishSingleFile。 有关必需的 MSBuild 属性和生成时验证,请参阅 WindowsAppSDKSingleFileVerifyConfiguration。
打包和部署资源
包装
通过配置应用的打包、安装和更新方式来准备分发。
部署
了解如何使用框架或独立部署选项通过应用交付和管理Windows 应用 SDK。
相关内容
- 发布第一个Windows应用
- 适用于Windows应用开发人员的 Code 签名选项
- MSIX on Windows 10 and Windows 11