












本文介绍了已知问题,并提供了在使用 MSIX 打包工具将应用转换为 MSIX 时需要考虑的排查建议。如果你需要在断开环境中获取MSIX封装工具或驱动程序,可以查看我们的其他文档。
如果您已选择加入我们的内部计划,请确保您拥有正确版本的MSIX打包工具:
如果您有兴趣加入我们的内部人员计划,请访问“加入MSIX包装工具内部人士!”。
MSIX 打包工具驱动程序作为 Windows Update 的按需功能包(FOD)提供。如果电脑上禁用了 Windows Update 服务,或者 Windows Insider 的飞行环设置与电脑的作系统版本不匹配,安装失败将会失败。
如果你在获取驱动时遇到困难,或者你在离线环境中工作,可以在这里找到下载驱动的链接。
如果你下载了驱动,但在转换包时遇到问题,可能是以下原因之一。
以下错误代码可能表明您遇到了连接问题:
以下错误代码可能表明您的电脑上的策略正在影响 Windows Update 连接性:-2145124306(0x8024002e)。
如果收到此错误代码,您可能需要检查环境设置和策略。
在这种情况下,MSIX 打包工具会在错误信息和日志中通知你驱动程序需要重启。重启电脑并重新开始转换以解决这个问题。
如果在转换过程中遇到这个错误,检查日志文件时,你应该会发现类似以下条目:
[Error] Error monitoring: Insufficient system resources exist to complete the requested service
当工具启动新的系统事件追踪会话时,发生在你已经超过Windows系统范围内能创建的最大会话数时。如果超过默认限制(64),会触发ERROR_NO_SYSTEM_RESOURCES错误,导致司机失败。
解决方案是通过以下步骤停止部分现有的事件追踪会话:
现在你可以再次尝试用MSIX打包工具进行转换。
有几个功能需要注意,这些功能会自动更改MSIX包中的最小版本支持。
如果你使用MSIX打包工具版本中1.2019.701.0之前的版本转换现有安装程序,说明该工具开启了强制Microsoft商店版本要求,或者使用了未将最低版本设置为10.0.16299.0的工具来创建你的包(Windows 10,版本1709)。这将在将应用部署到Windows 10(版本1709或更高版本)时出现错误提示。
要解决这个问题,打开MSIX打包工具,通过包编辑器编辑你的应用。打开你的清单,将元素属性设置为“10.0.16299.0”。MinVersionTargetDeviceFamily
<Dependencies>
<TargetDeviceFamily> Name="Windows.Desktop" MinVersion="10.0.16299.0" MaxVersionTested = "10.0.17763.0" />
</Dependencies>
在MSIX打包工具1.2019.1220.0版本中,我们增加了创建带有服务的MSIX包的支持。由于作系统对服务支持的限制,MSIX 打包工具会自动将带服务的 MSIX 包中支持的最小版本更改为 10.0.19025.0。这意味着你不能在低于Windows 10 2004版本的作系统上安装包含服务的MSIX,但你可以使用MSIX打包工具创建该MSIX,直到Windows 10 1809。如果你需要在较低的作系统上安装这个应用,请适当更新最小版本,但请注意服务支持将无法生效。
如果应用需要框架,确保在转换的监控阶段安装该框架。查看日志确认是否存在这种情况。如果你的应用需要安装驱动,你需要评估这是否是应用正常运行所必需的。MSIX 目前不支持驱动程序安装。
如果你在使用远程虚拟机进行转换时遇到问题,请参见“远程机器转换设置说明”。
当包包含带有损坏证书的二进制文件时,就会出现这个问题。要解决这个问题,可以用命令导出文件头并检查有没有坏元素。手动重写头部以修复问题。一般来说,MSIX 打包工具会自动检测坏头。如果问题依旧,提交反馈。更多信息请见此处。dumpbin.exe /headers
务必遵循这些步骤,并在Microsoft Store的商业应用中分配相应的角色。
你可以在MSIX Toolkit - Scripts中使用批处理转换脚本重新签约你的应用。
无论你的转换是否成功,每次转换都会生成日志文件。这些内容可以在这里找到:
%localappdata%\packages\Microsoft.MsixPackagingTool_8wekyb3d8bbwe\LocalState\DiagOutputDir\
故障代码会被编写,表示转换过程中的任何故障点。错误代码旨在用户友好。
如果转换是在远程设备或虚拟机上进行的,我们建议您从该设备复制日志文件,并将其作为反馈项的一部分附加。这将帮助我们更高效地诊断和解决问题。
你可以在这里找到远程转换的日志:%localappdata%\packages\Microsoft.MsixPackagingTool_8wekyb3d8bbwe\LocalState\DiagOutputDir\<Logs_#>\RemoteServer\Log.txt
如果你能共享包含本地客户端和远程服务器作的整个日志文件夹,那会更有帮助。
当包裹清单出现问题时,就会出现此错误。要找出问题,请进入包装编辑器并打开清单。打开清单后,你可以识别问题并提供正确的解决方案。
该文件可能已打开或不存在。要解决这个问题,可以添加相应的文件或关闭当前正在使用的文件。注意,如果它是打开的,你不会报错。相反,你会收到一个或错误。File not FoundAccess DeniedFile in Use
关于文件类型关联(FTA)的问题因软件包而异。MSIX 打包工具支持双击安装的文件关联。例如,如果你的应用有上下文菜单,它不会自动添加,所以你需要手动添加到清单中。请参见 desktop4:FileExplorerContextMenus manifest 元素示例。
MSIX 打包工具会捕获所有用户级快捷键和参数。如果这些快捷方式检测不正确,你可以手动添加到清单中。详情请参见 desktop7:快捷方式。
这种情况在使用备用硬盘进行应用转换时更为常见。如果你选择更改安装位置,它会改变所有文件的根地址。这意味着MSIX打包工具需要知道所有这些文件的去向,并在转换过程中被捕获。
你可以通过使用 Package Support Framework 的 write to install 目录修复来解决这个问题。我们在MSIX工具中默认添加了此功能,允许将其降至1809。如果你的申请在1709年不工作,而在1809年,这很可能就是问题所在。
通过反馈中心发送反馈是最好的方式。
你也可以直接通过MSIX打包工具的设置中的反馈标签发送反馈。
虽然我们让用户通过 Microsoft Store 轻松获取 MSIX 打包工具,但我们知道并非每个人都能访问 Store,或进入他们想要进行转换的互联环境。所以这个话题是关于在断开模式下使用这个工具。这里的信息仅适用于我们的公开发布;不包括我们的Insider项目发布。
你可以在下方下载最新版本的离线套餐。
如果你在使用包装工具的离线副本时遇到问题,请下载下面的该工具的离线许可副本。
拿到离线版后,你可以使用把应用包和许可证添加到你的电脑上。
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。