排查使用应用安装程序文件遇到的安装问题
如果在从应用安装程序文件安装应用程序时发现任何问题,本主题将提供一些可能有所帮助的故障排除指南。
先决条件
若要在 Windows 10 中旁加载应用,用户设备必须满足以下要求:
Windows 10:
- 用于签署包的证书必须受到设备的信任。 有关更多详细信息,请参阅下面的受信任的证书一节。
- Windows 10 版本必须支持
.appinstaller
文件架构和分发协议。
Windows 10 1909 和更早版本:
- 必须为开发人员模式或旁加载应用启用设备。 请参阅启用设备进行开发,了解详细信息。
常见问题
首次在用户计算机中旁加载应用程序时,出现了一些常见问题。 接下来的几个章节介绍了最常见的问题及其解决方案。
Windows 版本
每个 Windows 10 版本都改进了旁加载体验,下表显示每个主要版本中都有哪些功能可用。 如果尝试使用 Windows 10 版本中不支持的方法旁加载应用,则会出现部署错误。
版本 | 旁加载注释 |
---|---|
内部版本 17134(2018 年 4 月更新,版本 1803) | 可以通过 UNC/共享文件夹访问 .appinstaller 文件。 还可以使用可配置更新检查。 |
内部版本 16299(Fall Creators Update 版本 1709) | 引入了 .appinstaller 文件以向应用提供自动更新。 此版本仅支持 HTTP 端点。 更新检查不可配置,且每 24 小时进行一次。 |
内部版本 15063(Creators Update 版本 1703) | 应用安装程序应用可以从应用商店下载应用依赖关系(仅在发布模式下)。 |
内部版本 14393(周年更新版本 1607) | 引入了应用安装程序应用来安装 .appx 和 .appxbundle 文件,不支持 .appinstaller 文件。 |
内部版本 10586(11 月更新版本 1511) | 旁加载只能通过 PowerShell 使用 Add-AppxPackage 命令来实现。 |
内部版本 10240(Windows 10 版本 1507) | 旁加载只能通过 PowerShell 使用 Add-AppxPackage 命令来实现。 |
受信任的证书
必须使用设备信任的证书为应用包签名。 默认情况下,常见证书颁发机构提供的证书在 Windows 操作系统中受信任。
但是,如果用于对应用包进行签名的证书不受信任,或开发期间使用的是本地生成的/自签名证书,则应用安装程序可能会报告该包不受信任,并会阻止其安装:
若要解决此问题,具有设备本地管理员权限的用户必须使用计算机证书工具将证书导入以下容器之一:
- 本地计算机:受信任的人员
- 本地计算机:受信任的根证书颁发机构(不建议)
重要
请勿将包签名证书导入到用户证书存储中。 验证程序包标识符时,应用安装程序不会搜索用户证书。
从“开始”菜单进行搜索,可以轻松找到计算机证书管理工具:
成功导入签名证书后,重新运行应用安装程序将显示包受信任且可安装:
依赖项未安装
Windows 10 应用程序可以具有框架依赖项,该依赖项基于用于生成应用的应用程序平台。 如果使用的是 C# 或 VB,应用将需要 .NET 运行时和 .NET 框架包。 C++ 应用程序需要 VCLibs。
重要
如果应用包是在发布模式配置中生成的,则会从 Microsoft Store 获取框架依赖项。 但是,如果应用是在调试模式配置中生成的,则会从文件 .appinstaller
中指定的位置获取依赖项。
文件不可访问
从 HTTP 端点进行安装时,请务必验证是否可通过正确的 MIME 类型访问所有文件。 验证这些文件的最简单方法是点击 Visual Studio 生成的 HTML 页面中提供的链接。 必须检查这些文件:
.appinstaller
文件,可用作application/xml
.appx
和.appxbundle
文件,可用作application/vns.ms-appx
应用安装失败,出现错误消息:参数不正确
由于目前不支持虚 URL,因此在使用 ms-appinstaller
协议时,源参数必须以 .appinstaller
结尾。 如果重定向到以结尾 .appinstaller
的文件,也没有关系。 同样会失败。 解决此问题的唯一方法是确保原始 URL 以 .appinstaller
结尾。
隔离应用安装程序应用问题
如果应用安装程序无法安装应用,以下步骤将帮助确定安装问题。
验证应用包文件安装
将应用包文件下载到本地文件夹,并尝试使用 Add-AppxPackage PowerShell 命令进行安装。
将
.appinstaller
文件下载到本地文件夹,并尝试使用Add-AppxPackage -Appinstaller
PowerShell 命令进行安装。
应用安装程序事件日志
应用部署基础结构会发出日志,这些日志通常可用于通过 Windows 事件查看器调试安装问题:Application and Services Logs -> Microsoft -> Windows -> AppxDeployment-Server