【问题标题】:Clickonce error: missing files. Need to get missing filenameClickonce 错误:缺少文件。需要获取丢失的文件名
【发布时间】:2023-03-27 15:08:01
【问题描述】:

我的 ClickOnce 应用程序向用户显示错误:“无法下载应用程序。应用程序缺少必需的文件。请联系应用程序供应商或您的系统管理员寻求帮助。”

如何确定丢失了哪个文件?我是否需要手动将文件放到发布服务器上?

我认为,当我单击先决条件并设置选项以从组件供应商的网站下载先决条件并设置为包含组件时,ClickOnce 将包含所有这些组件。看起来我错过了一些东西。我怎么知道它是什么。手动检查清单会很耗时。

【问题讨论】:

  • 我遇到了类似的错误 - 我将所有引用更改为包含,但在某些机器上尝试从 publish.htm 安装时仍然会出现错误。最终,我在浏览器地址中输入了特定的子安装文件(xxx.application),一切正常。

标签: .net clickonce


【解决方案1】:

我通常在这些问题上发现它与设置为“包含(自动)”而不是仅包含的依赖项有关。它可以在某些机器上工作,但不能在其他机器上工作,这取决于目标机器上已经安装了哪些 DLL。

要包含的文件 打开项目属性的“发布”选项卡并单击“应用程序文件”,然后检查哪些 DLL 设置为“包含(自动)”。对于安装到您机器上的 GAC 中的东西,您可能需要将其中一些更改为标准的“包含”。 Visual Studio 会根据您机器的配置做出一些假设。

日志文件 要检查的另一件事通常是错误消息将引用文本日志文件。我不相信它以任何方式链接它,所以你必须浏览它。但是找到那个文件,它应该会给你一些更多的信息。

证书错误 我看到的一个问题是,如果安装在服务器上的 SSL 证书在您尝试安装它的机器上不受信任。我经常在 GoDaddy SSL 认证中发现这种情况,因为它们并不总是安装在不经常使用 Windows 更新的机器上。

【讨论】:

    【解决方案2】:

    ClickOnce 以显示与实际问题无关的错误而闻名。如果问题仅限于单个用户(听起来就是这样),我通常首先尝试通过删除 %user_profile%\Local Settings\Apps\ 目录来清除用户的 ClickOnce 缓存。这将解决 80% 的“联系应用程序供应商...”错误,并且对用户 PC 的影响相对较小。他们只需重新下载所有 .NET 应用程序。

    【讨论】:

      【解决方案3】:

      弹出错误时是否有“详细信息”按钮?通常那里有一个堆栈跟踪,您可以在其中看到它正在尝试下载的特定文件。如果可以,请在此处发布该信息。

      【讨论】:

      • 在错误摘要中,下面一行显示了几次。但是它显示了应用程序的名称(xxx.aplication),并且路径不是发布服务器。错误并没有告诉我太多。它只告诉我该应用程序不存在于用户的机器上。现在的问题是为什么不呢?为什么 ClickOnce 无法将文件复制到用户的计算机。 .. + 找不到文件'C:\Documents and Settings\xxxxxx\Local Settings\Temporary Internet Files\Content.IE5\O220G6MA\someAppName.application'。
      猜你喜欢
      • 1970-01-01
      • 2016-04-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-10-17
      • 1970-01-01
      • 2017-01-04
      相关资源
      最近更新 更多