异常处理--“System.BadImageFormatException”类型的未经处理的异常在 DataTest.exe 中发生

今天写了一个测试的控制台应用程序,需要引用一个第三方dll,结果程序运行到要创建第三方dll中的一个类的实例的时候,总是报异常,“System.BadImageFormatException”类型的未经处理的异常在 DataTest.exe 中发生 。其他信息:“未能加载文件或程序集xxx或它的某一个依赖项。试图加载格式不正确的程序。" 如下图:

一般来说,这种异常是由于目标程序的目标平台与其某一依赖项的目标编译平台不一致导致的,把所有的项目都修改到同一目标平台下(X86、X64或AnyCPU,vs2013默认是AnyCPU)进行编译,一般即可解决问题。

我遇到的这个问题,可能是因为第三方的dll的编译平台是x86的,在X64和AnyCPU下均运行不成功,将目标平台改成x86,问题就解决了。

具体操作方法:

在引用第三方dll的项目名称上点右键选择属性,然后在"设置属性"的窗口中找到“生成”,将其中的“目标平台”改成相应的平台后保存就可以了。

另,如果是Web项目,将程序部署到服务器上之后,还需要将应用程序池中,“启用32位应用程序”项设置为true。如下图:

————————————————
版权声明:本文为CSDN博主「赵修杰」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/shouhou_Bingo/article/details/53336804

原文地址:https://www.cnblogs.com/wx881208/p/12339656.html

时间: 2024-11-04 20:54:46

异常处理--“System.BadImageFormatException”类型的未经处理的异常在 DataTest.exe 中发生的相关文章

System.BadImageFormatException”类型的未经处理的异常在 xx.exe 中发生

平板系统项目,一个考生端一个教师端,很久没有用了,而且重装了系统 VS2015打开考生端项目就是标题中错误,按照网上说法更改了目标平台还不行.后来把.net framework由4.0改为4.5.2可以了,隐约记得以前把这个升级成4.5.2了,估计重系统后配置恢复默认了. 然后在运行过程中里面短动画无法播放,并且出现  “未处理的“System.Runtime.InteropServices.COMException”类型的异常出现在 AxInterop.WMPLib” 错误出现在window

EF异常:“System.InvalidOperationException”类型的未经处理的异常在 mscorlib.dll 中发生

{"无法为具有固定名称"System.Data.SqlServer"的 ADO.NET 提供程序加载在应用程序配置文件中注册的实体框架提供程序类型"System.Data.Entity.SqlServerCompact.SqlCeProviderServices, EntityFramework.SqlServerCompact".请确保使用限定程序集的名称且该程序集对运行的应用程序可用.有关详细信息,请参阅 http://go.microsoft.com

“System.BadImageFormatException”类型的未经处理的异常在 PurchaseDevices.Access.dll 中发生 其他信息: 未能加载文件或程序集“System.Data.SQLite, Version=1.0.66.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139”或它的某一个依赖项。试图加载格式不正确

引用sqlite的程序集时,有时会报如下异常: "System.BadImageFormatException"类型的未经处理的异常在 PurchaseDevices.Access.dll 中发生 其他信息: 未能加载文件或程序集"System.Data.SQLite, Version=1.0.66.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139"或它的某一个依赖项.试图加载格式不正确的程序. 解决方案:在配置

关于WPF 中 “System.Windows.Markup.XamlParseException”类型的未经处理的异常在 PresentationFramework.dll 中发生 异常的处理。

前几天做一个项目的时候出现了一个异常: “System.Windows.Markup.XamlParseException”类型的未经处理的异常在 PresentationFramework.dll 中发生 其他信息: “在“System.Windows.Markup.StaticResourceHolder”上提供值时引发了异常.”,行号为“8”,行位置为“33”. 现象描述: 在处理界面时,界面上增加了一个LISTBOX来处理接收来的数据,单击列表中的其中一项时会弹出详细信息.所以我就在样式

“System.IO.FileNotFoundException”类型的未经处理的异常在 mscorlib.dll 中发生

这个错误是我在打包的时候,发现的,因为我移动了我的工程的位置(从C盘移动到了D盘),看一下出错的代码: Dim strDB As String = System.Configuration.ConfigurationSettings.AppSettings("DBUser") '这里修改配置文件就可以确定是查询那个表了. '/// <summary> '/// depiction:<实例化一个DAL中的User表的类> '/// </summary>

“System.Data.Entity.ModelConfiguration.ModelValidationException”类型的未经处理的异常在 EntityFramework.dll 中发生

下面是错误位置.

“System.InvalidOperationException”类型的未经处理的异常在 ESRI.ArcGIS.AxControls.dll 中发生

问题描述: 新手们进行ArcGIS ArcObject开发时经常会遇到各种十分古怪的问题,比如下面的这个问题: “System.InvalidOperationException”类型的未经处理的异常在 ESRI.ArcGIS.AxControls.dll 中发生 其他信息: ArcGIS version not specified. You must call RuntimeManager.Bind before creating any ArcGIS components. 此时虽然程序能正

“System.FormatException”类型的未经处理的异常在 System.IdentityModel.dll 中发生 其他信息: 十六进制字符串格式无效。

如果你的 WebService 客户端证书配置都没问题,唯独调用接口会出现这个错误 "System.FormatException"类型的未经处理的异常在 System.IdentityModel.dll 中发生 其他信息: 十六进制字符串格式无效. 解决办法: 打开你的证书列表,找到证书指纹: 接下来是重点,复制的时候,切记不要用全选,像这样: 要用鼠标仔细的从第一个"可见"字符选起,到"可见"字符结束,像这样: 请仔细对比以上两张图的差别,不

System.AccessViolationException”类型的未经处理的异常在 System.Data.dll 中发生

错误背景: 操作系统:编程环境:VS2013:  语言:VB.net:  数据库:SQLserver2008 做数据库连接时,发生的错误: 错误提示为: 说明:用VB.net连接SQLServer数据库 第一种情况: 连接字符串为"Server=(Local);Database=charge_sys;UserID = sa;Password=123456"时,连接没问题: 第二种情况: 当把" Server=(Local)"换为 " Server=192.