部署概述
本部分的主题介绍有关部署不同类型 Windows 应用的指导。
MSIX 打包的优点和缺点
首先需要决定是否要对应用进行 MSIX 打包。
- MSIX 打包。 这是使用 MSIX 技术打包应用的过程(请参阅什么是 MSIX?)。 MSIX 打包为应用提供了一个程序包标识(请参阅下表了解其优势所在)。
- 稀疏打包。 一种在保留程序包标识的同时选择退出 MSIX 打包的方法(减少应用受到的限制)。 有关如何稀疏打包应用的说明,请参阅教程 - 在使用 Windows 应用 SDK 的非 MSIX 打包应用中使用引导程序 API。
- 不打包。 退出 MSIX 打包(出于上述原因)的另一种方法,但不保留程序包标识。
重要
建议对应用进行 MSIX 打包。 这将为客户提供可靠的新式打包和部署体验。 部署应用的其他方法涉及其他安装技术,例如 .exe
或 .msi
文件。
MSIX 打包 | 稀疏打包或不打包 | |
---|---|---|
优点 | MSIX 打包为用户提供安装、卸载和更新应用的简便方法。 卸载是干净的,卸载应用后,系统将还原到安装前的相同状态,不会留下任何项目。 MSIX 还支持增量更新和自动更新。 此外,Microsoft Store 针对 MSIX 包进行了优化(MSIX 可以在 Microsoft Store 内外使用)。 MSIX 打包还为应用提供了一个程序包标识,这是某些 Windows 功能(例如,自定义上下文菜单扩展)所必需的。 |
如果选择不使用 MSIX 打包,那么应用在应用类型、可以调用的 API 以及对注册表和文件系统的访问方面不受限制。 稀疏打包意味着仍然可以获得与具有 MSIX 打包提供的程序包标识相同的好处。 应用通常会使用 .exe 或 .msi 文件、自定义安装程序、ClickOnce 或 xcopy 部署进行安装和更新。 |
缺点 | 应用在应用类型以及它在系统中可以拥有的代理方面受到限制。 例如,不能使用 NT 服务。 进程间通信 (IPC) 选项受到限制;如果要发布到 Microsoft Store,则特权/提升访问权限受到限制;文件/注册表访问是虚拟化的(另请参阅灵活的虚拟化)。 在某些情况下,企业策略可以通过禁用 Microsoft Store 来禁用 MSIX 更新。 | 不使用 MSIX 的应用存在导致过时的配置数据和软件在卸载应用后累积的风险。 对于客户和系统来说,这可能是一个问题。 |
使用 Windows 应用 SDK
在决定是否对应用进行 MSIX 打包后,接下来可以决定是否在应用中使用 Windows 应用 SDK。 请参阅 Windows 应用 SDK 部署概述。
Win32 和 .NET 桌面应用
如果生成 Win32 桌面应用(有时称为经典桌面应用)或 .NET 应用(包括 Windows Presentation Foundation (WPF) 和 Windows 窗体 (WinForms)),则可以使用 MSIX 打包和部署应用。
还可使用其他安装技术打包和部署这些类型的应用。
- 应用程序安装和服务
- Windows Installer
- .NET 应用程序发布概述
- 部署 .NET Framework 和应用程序
- 部署 WPF 应用程序
- Windows 窗体的 ClickOnce 部署
UWP 应用
UWP 应用是使用 MSIX 打包和部署的。