.net – CorFlags.exe,System.Data.SQLite.dll和BadImageFormatE
发布时间:2020-12-12 18:59:02 所属栏目:百科 来源:网络整理
导读:从 http://sqlite.phxsoftware.com/对System.Data.SQLite.dll运行 CorFlags.exe会产生以下输出. Version : v2.0.50727CLR Header: 2.5PE : PE32CorFlags : 24ILONLY : 032BIT : 0Signed : 1 如您所见,未指定32BIT且PE等于PE32.根据Moving from 32-bit to 64-
从
http://sqlite.phxsoftware.com/对System.Data.SQLite.dll运行
CorFlags.exe会产生以下输出.
Version : v2.0.50727 CLR Header: 2.5 PE : PE32 CorFlags : 24 ILONLY : 0 32BIT : 0 Signed : 1 如您所见,未指定32BIT且PE等于PE32.根据Moving from 32-bit to 64-bit application development on .NET Framework,这意味着该组件是任何CPU.但是,使用64位应用程序中的程序集会导致错误:
如果CorFlags.exe报告任何CPU,为什么会发生异常?组件是否错误标记为32BIT:0? 我知道有一个64位版本也可用,我只是想知道导致错误的原因. 解决方法您使用的System.Data.SQLite.dll文件是 mixed-mode assembly,这意味着它不是纯.NET代码(另请参阅“ILONLY:0”标志),它还包含非托管机器代码,不能是“任何”中央处理器”.因此,由于DLL包含32位本机代码,因此只能将其加载到32位进程中,否则会发生BadImageFormatException.(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |