部署概述

本部分的主题介绍有关部署不同类型 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 打包和部署应用。

还可使用其他安装技术打包和部署这些类型的应用。

UWP 应用

UWP 应用是使用 MSIX 打包和部署的。