【发布时间】:2012-07-07 09:26:02
【问题描述】:
我有两个项目,ProjectA 和 ProjectB。 ProjectB 是一个控制台应用程序,它依赖于ProjectA。昨天,一切正常,但今天当我运行ProjectB 时突然发现:
BadImageFormatException 未处理:
无法加载文件或程序集“ProjectA,Version=1.0.0.0,Culture=neutral,PublicKeyToken=null”或其依赖项之一。试图加载格式不正确的程序。
两者都只是常规项目,不依赖于任何其他非 .Net 项目。两者都是完全的 .Net - 没有本机代码,也没有 P/Invoke。我还有其他依赖于ProjectA 的项目,并且仍然可以正常工作。
我尝试过的事情:
- 确保两个项目都设置为“任何 CPU”,并选中 build 复选框。他们是。
- 确保两个项目都用于相同的目标框架(.Net 4.0 客户端配置文件)。
- 在 ProjectB --> References --> ProjectA --> Properties 下,确保 "Copy Local" 设置为 "True" _ (I验证 ProjectA.dll 是否被正确复制)
- 清理/重建解决方案。我什至尝试手动删除两个项目中的 /bin 和 /obj 文件夹。
- 重新启动 Visual Studio。重新启动我的计算机。
- 查看存储库的全新副本。
但我仍然遇到同样的错误。我不知道我做了什么导致这个,也不知道如何解决它。有什么想法吗?
【问题讨论】:
-
如果您在存储库中有版本历史记录,您能否检查一下 csproj 文件中是否存在一些差异?
-
@Steve:根据 Mercurial 的说法,除了添加对新 .cs 文件的引用之外没有任何变化
-
你在另一台机器上得到同样的行为吗?机器上是否还有其他变化(例如 Windows 更新、依赖项更新等)?
-
您是否尝试过还原那些新的 .cs 文件?
-
这对我有用............ stackoverflow.com/a/9419522/191403
标签: c# exception console-application badimageformatexception