【问题标题】:Clickonce application runs the first time but throws an exception the second timeClickonce 应用程序第一次运行但第二次抛出异常
【发布时间】:2013-04-10 20:12:43
【问题描述】:

我有一个 .NET 4.0 应用程序。第一次运行时,安装程​​序运行,应用程序正常打开。如果你在它已经安装的时候运行它,它会抛出这个异常:

System.BadImageFormatException was unhandled
Message: Could not load file or assembly '[my assembly]' or one of its dependencies. 
This assembly is built by a runtime newer than the currently loaded runtime and cannot be loaded.

该应用程序以前是 .NET 3.5,我将主项目和两个依赖项更改为 .NET 4。还有其他使用 .NET 2 和 .NET 3.5 的参考,但没有一个高于 4。知道这里发生了什么?

【问题讨论】:

    标签: .net visual-studio-2010 .net-4.0 clickonce


    【解决方案1】:

    不确定它第一次是如何工作的,但根据错误消息,看起来您的客户端计算机确实没有安装 .NET 4 框架(不确定您是否只需要 .NET 4 的客户端版本或完整版本)。

    【讨论】:

      【解决方案2】:

      问题是我将项目更改为在 .NET 4(已安装)上构建,但我的程序在第一次启动后从另一个位置加载不同的 App.config 以进行更新。该配置文件包含

      <startup>
        <supportedRuntime version="v2.0.50727"/>
      </startup>
      

      而不是

      <startup>
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
      </startup>
      

      这导致我的应用在启动时加载 3.5 运行时而不是使用 .NET 4。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-02-06
        • 1970-01-01
        • 2023-01-12
        • 2016-05-27
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多