我已将代码分解为尽可能小的语句:
Dim cn As System.Data.SQLite.SQLiteConnection
从WinForm应用程序调用代码时出现以下错误:
System.BadImageFormatException:可以 不加载文件或程序集 'System.Data.SQLite,Version = 1.0.65.0, 文化=中性, PublicKeyToken = db937bc2d44ff139'或 其中一个依赖项。一次尝试 是用来加载程序的 格式不正确。文件名: 'System.Data.SQLite,Version = 1.0.65.0, 文化=中性, 公钥= db937bc2d44ff139'
然而从MS单元测试调用相同的代码我没有得到错误,加上完整的代码集按预期工作。
答案 0 :(得分:56)
Sqlite包含非托管代码,除非部署64位版本,否则无法在64位操作系统上运行它。快速修复:Project + Properties,Build选项卡,Platform Target = x86。
答案 1 :(得分:4)
确保使用相对于32位和64位的正确装配。
答案 2 :(得分:1)
我通过NuGet下载新版本的SQLite DLL解决了这个问题: http://gurustop.net/blog/2011/05/19/sqlite-database-nuget-package-common-problems-solved/