打包和部署Windows应用概述

应用打包在Windows上为应用提供可预测的安装、更新和服务模型。 WinUI 3 应用默认打包,而许多其他应用类型则不打包。 依赖于包标识的功能包括后台任务、推送通知、Windows 10动态磁贴、自定义上下文菜单扩展、共享目标和其他扩展点。 打包还支持更简洁的部署、可靠的更新,以及通过Microsoft Store和企业部署工具等渠道进行分发。

部署确定如何将应用和任何运行时依赖项分发给用户。 本概述可帮助你选择打包模型、分发路径,以及对于使用 Windows 应用 SDK 的应用,选择依赖框架的部署模型或自包含部署模型。

选择打包、分发和部署选项

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。