MSIX Web 安装程序不工作 - 解析应用程序包时出错

Posted

技术标签:

【中文标题】MSIX Web 安装程序不工作 - 解析应用程序包时出错【英文标题】:MSIX Web Installer not working - Error in parsing the app package 【发布时间】:2021-03-16 23:08:24 【问题描述】:

我一直在讨论这个问题的其他线程,但似乎没有什么能解决我的问题。无论我做什么,我的 .appinstaller 都不起作用。我不断收到:解析应用程序包时出错。

首先让我说我可以使用直接 URL 访问 .appinstaller 文件和 .appxbundle 文件。此外,我可以使用 .appxbundle 进行安装,并且我有一个签名证书。我也尝试过环回豁免,但这也不起作用。这是我的 .appinstaller 的 XML

<?xml version="1.0" encoding="utf-8"?>
<AppInstaller
    Uri="http://dev.xxxxxx.com/MSIXPrototype/HelloWorldPackage.appinstaller"
    Version="1.0.7.0" xmlns="http://schemas.microsoft.com/appx/appinstaller/2017/2">
    <MainBundle
        Name="xxxx"
        Version="1.0.7.0"
        Publisher="CN=my_cert"
        Uri="http://dev.xxxxxx.com/MSIXPrototype/HelloWorldPackage_1.0.7.0_x64.appxbundle" />
    <UpdateSettings>
        <OnLaunch
            HoursBetweenUpdateChecks="0" />
    </UpdateSettings>
</AppInstaller>

此外,我已将所有 MIME 类型添加到我的 apache httpd.conf 文件中:

    AddType application/appinstaller .appinstaller
    AddType application/msixbundle .msixbundle
    AddType application/appxbundle .appxbundle
    AddType application/msix .msix
    AddType application/appx .appx 

我将不胜感激这方面的任何帮助。谢谢!

【问题讨论】:

您可能需要检查您的AppInstaller中提到的Uri dev.xxxxxx.com/MSIXPrototype/HelloWorldPackage.appinstaller和dev.xxxxxx.com/MSIXPrototype/…是否可以访问。 重启电脑后问题解决了吗?如果问题没有解决,最好试试看.appinstaller(.appinstaller位于本地磁盘)是否可以用本地uri安装应用。 能否告诉我您是否尝试过我评论中提到的尝试? 【参考方案1】:

嗯,最近我看到了各种奇怪和类似的解析错误,或者只是操作系统忽略了 XML 中的设置。

对于您的情况,我只看到了两种有效的解决方案:

    尝试重新启动机器。我知道,这不是您所期望的建议,但它对MSIX Tech community 上的其他人的工作次数太多了,所以我不排除这个解决方案

    确保您的 URI 不包含任何空格。我们在一些内部测试中遇到了这个问题,操作系统只是说 .appinstaller 文件已损坏并且无法解析它,即使 URI 中的空格被正确转义(“%20”)并且浏览器正在正确加载它。

【讨论】:

我会尝试重启我的电脑。目前我们正在使用 Docker 在 windows 和 linux 之间进行通信,但我已经重新启动了我的 docker 容器,但什么也没做。我的网址不包含空格。 事件查看器中有什么可以帮助我们的吗? docs.microsoft.com/en-us/windows/win32/appxpkg/troubleshooting 事件查看器中没有任何内容。【参考方案2】:

很少提及的托管要求可能会导致此错误。您的 Web 服务器(和/或前面的所有负载平衡器/缓存)必须支持请求中的 Range 标头。

这意味着您不能在(例如)Netlify 和许多其他提供商上托管您的应用安装程序。在 S3 的上下文中提到了 here。

【讨论】:

以上是关于MSIX Web 安装程序不工作 - 解析应用程序包时出错的主要内容,如果未能解决你的问题,请参考以下文章

无法从 MSIX 打包应用程序加载外部 DLL

MSIX 未打包所有依赖项

使用 MSIX 安装程序的 WPF 桌面应用程序 - 未找到目录

通过 MSIX 包安装的应用程序“忘记”虚拟 LocalAppData 路径

如何自动启动使用 Msix 打包的应用程序?

MSIX 添加类似于 ClickOnce 的先决条件