为了账号安全,请及时绑定邮箱和手机立即绑定

无法加载文件或程序集…尝试加载格式不正确的程序

无法加载文件或程序集…尝试加载格式不正确的程序

C#
森林海 2019-07-17 09:46:43
无法加载文件或程序集…尝试加载格式不正确的程序(System.BadImageFormatException)我有两个项目ProjectA和ProjectB. ProjectB是一个控制台应用程序,它依赖于ProjectA..昨天,一切都很好,但是今天我突然跑了起来。ProjectB我明白了:BadImageFormatException未处理:无法加载文件或程序集‘Projecta,version=1.0.0.0,区域性=中性,PublicKeyToken=null’或其依赖项之一。试图加载格式不正确的程序。这两个项目都只是常规项目,不依赖于任何其他非.NET项目。两者都是完全.NET的-没有本机代码,也没有P/Invoke。我还有其他的项目ProjectA还能正常工作。我尝试过的事情:确保两个项目都设置为“任意cpu”,并使用建房复选框选中。他们是。确保两个项目都适用于同一个目标框架(.NET 4.0客户简介).在ProjectB->引用->Projecta->属性下,请确保“复制本地”设置为“真” _ (我验证了ProjectA.dll被正确复制)清理/重建解决方案。我甚至尝试手动删除两个项目中的/bin和/obj文件夹。重新启动VisualStudio。重启我的电脑。查看一个全新的存储库副本。但我还是会犯同样的错误。我不知道我做了什么导致了这件事,也不知道如何解决它。有什么想法吗?
查看完整描述

3 回答

?
月关宝盒

TA贡献1772条经验 获得超5个赞

我很肯定你有32位/64位的矛盾。听起来,您的主项目可能设置为32位,而其引用的类则设置为64位。试着看这个问题这个也是..在他们之间,你应该能解决你的问题。


查看完整回答
反对 回复 2019-07-17
?
手掌心

TA贡献1942条经验 获得超3个赞

可能是在服务器上部署后,您的网站正面临问题。

然后,需要调整应用程序池以启用32位应用程序。

步骤:

  1. 打开IIS管理器
  2. 点击应用程序池
  3. 选择您正在使用的任何应用程序池。
  4. 从右窗格中,单击“高级设置”。
  5. 将启用32位应用程序设置为True


查看完整回答
反对 回复 2019-07-17
?
HUH函数

TA贡献1836条经验 获得超4个赞

我刚刚收到在VisualStudio 2015中运行IISExpress的错误消息。在我的例子中,我需要运行IIS Express的64位版本:

工具->选项->项目和解决方案->Web项目
选中“将IIS Express的64位版本用于网站和项目”的复选框。


查看完整回答
反对 回复 2019-07-17
  • 3 回答
  • 0 关注
  • 394 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信