【问题标题】:Cannot load assembly problem无法加载程序集问题
【发布时间】:2011-09-06 20:19:30
【问题描述】:

我收到以下错误:

无法加载程序集。错误详细信息:System.BadImageFormatException:无法加载文件或程序集“文件:...”或其依赖项之一。此程序集由比当前加载的运行时更新的运行时构建,无法加载。

这个程序集是用 .Net Framework 4.0 构建的,我确保我的解决方案中的所有项目也是用 .Net Framework 4.0 构建的。

知道为什么我会收到错误消息吗?如何检查我的应用程序加载了哪些框架?

【问题讨论】:

  • 检查app.config,有没有supportedRuntime或requiredRuntime之类的条目?
  • 这是 Windows 服务吗?如果是这样,您是否尝试过install it with the 64bit version of Installutil
  • 这是我的配置:
  • 这通常发生在存在 x86/x64 问题时。
  • 我检查过了——一切都是为 x86 平台构建的

标签: c# .net


【解决方案1】:

什么是主要的可执行文件,即负责决定加载哪个版本的 CLR 的程序集?请注意,这不仅仅是由 .NET 4 构建的情况 - 如果您的可执行文件目标 .NET 3.5 或更低版本,它将加载到 .NET 2.0 CLR 中,并且您的 .NET 4 程序集不会加载。

【讨论】:

  • 在主可执行项目的属性中,我看到目标框架是:.NET Framework 4.0
  • @Erik:你能告诉我们更多关于这个应用程序的信息吗?它是什么类型的应用程序?你的 app.config 中有关于supportedRuntime 的内容吗?
  • 我在问题的 cmets 中发布了配置的内容。该应用程序是控制台应用程序。它从其他项目加载一些 DLL(全部使用 .NET Framework 4.0 构建 - 已检查)
【解决方案2】:

您好,在我遵循以下提示之前,我遇到了同样的问题:BadImageFormatException Class(“备注”部分)

在我的例子中,我试图通过调用未管理的代码来加载程序集。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-05-29
    • 2021-03-02
    • 1970-01-01
    • 2023-04-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多