MSIX 是新式Windows应用打包格式。 它为任何Windows应用提供可靠、干净安装和卸载、自动更新以及访问需要包标识的Windows平台功能的访问权限。
包标识 是关键概念。 将应用打包为 MSIX 时,Windows根据清单信息(例如其名称、发布者、版本、体系结构和资源标识符)为其分配标识。 需要该身份用于:
- Windows平台 API,例如推送通知、后台任务和动态磁贴
- 通过 Windows AI API 使用设备上的模型的 AI 功能
- 应用商店分发和更新渠道
- 通过 Intune 和 Configuration Manager 进行企业管理
如果不确定是打包应用还是要使用哪个打包模型,请从 打包决策指南开始。
主要功能
- 可靠安装和卸载。 MSIX 提供 99.96% 在数百万次安装中安装成功率,并保证完全卸载,无需剩余文件或注册表项。
- ** 差异更新。 更新时仅下载已更改的 64 KB 块,尽量减少网络影响和更新时间。
- 磁盘空间效率。 跨应用的共享文件由Windows管理;每个应用保持独立,因此更新不会影响其他应用。
- 容器化执行。 应用在具有虚拟文件系统和注册表的轻型容器中运行,Windows虚拟化或重定向某些文件系统和注册表写入,以减少系统影响。 请参阅 MSIX 容器化概述。
- 企业级准备就绪 完全支持通过 Intune、Configuration Manager 和 Enterprise Modern App Management CSP 进行部署。
开始
| 目标 | 从这里开始 |
|---|---|
| 打包新的 UWP 应用 | 在 Visual Studio 中创建 MSIX 包 |
| 将现有安装程序转换为 MSIX | MSIX 打包工具 |
| 从命令行打包和签名 | WinApp CLI |
| 无需应用商店提供更新 | 应用安装程序 |
| 在打包和解压缩之间决定 | 打包决策指南 |
| 了解包裹类型 | MSIX 包类型 |
| 部署到企业设备 | 企业部署概述 |
亮点
- WinApp CLI。 WinApp CLI 为完整的 MSIX 工作流提供命令行工具:在不离开终端的情况下生成证书、生成包和签名。
- 打包现有Windows应用。 使用 MSIX 打包工具为任何Windows应用创建 MSIX 包,而无需访问源代码。
- 应用运行时修复。 通过 包支持框架 ,无需修改源代码即可将兼容性修补程序应用于打包的应用。
- 跨平台 SDK。 开放源代码 MSIX SDK提供了用于在任何平台上验证、验证和解压缩 MSIX 包的 API。
在 MSIX 包内
有效负载文件
有效负载文件是包中存储并交付的文件,包括可执行代码、库、资产、配置文件和资源。
足迹文件
足迹文件是描述、验证或支持负载内容的包元数据和基础结构文件。 核心 footprint 文件包括:
- AppxManifest.xml 声明包标识、依赖项、功能、视觉元素和扩展点。
- AppxBlockMap.xml 列出了包文件及其每个 64 KB 块的加密哈希值。 Windows使用它进行差异更新和完整性验证。
- AppxSignature.p7x 包含包签名。 在安装之前,必须对所有 MSIX 包进行签名。
仅当包使用相应的功能时,其他 footprint 文件才存在。 例如, AppxContentGroupMap.xml 描述流式安装的内容组,并 AppxMetadata\CodeIntegrity.cat 包含代码完整性元数据。
Windows 打包 API 区分有效负载文件与占用空间文件。
有关包体系结构和部署行为,请参阅 MSIX 包类型、 包存储卷以及 包注册和生存期。
支持的平台
有关支持的平台的完整列表,请参阅 MSIX 功能和支持的平台。
验证、测试和故障排除
有关测试和常见错误,请参阅 MSIX 故障排除指南 和 MSIX 验证和测试概述。
应用容器的优点
可以将打包为 MSIX 的应用配置为在轻型应用容器中运行,该容器使用文件系统和注册表虚拟化隔离进程。 有关容器更改及其使用方式的完整说明,请参阅 MSIX 容器化概述。