VB.Net使用SQLite编译为在64位机器上运行32位

时间:2012-02-20 04:05:55

标签: vb.net sqlite 64-bit 32-bit

这是情况 - 我有一个vb.net exe编译为X86机器使用2 dll的...因为其中一个dll只提供32位,我不想要处理32/64版本,我强制32位编译选项,一切都很好。现在我有一个64位的工作站,它抛出了关于sqlite.dll的错误(下面的错误#1)...在阅读完之后我开始明白很多人都有这个问题。我尝试使用64位版本的sqlite替换客户端计算机上的dll并且不起作用(错误#2)。我在某处读到64位版本需要VC 2010 redistro,但这不起作用。我无法将此应用程序编译为64位,因为其他dll是32位。非常感谢任何帮助。

错误#1 - System.InvalidOperationException:没有与此命令关联的连接

错误#2 - System.BadImageFormatException:无法加载文件或程序集'System.Data.SQLite,Version = 1.0.79.0,Culture = neutral,PublicKeyToken = db937bc2d44ff139'或其依赖项之一。尝试加载格式不正确的程序。 文件名:'System.Data.SQLite,Version = 1.0.79.0,Culture = neutral,PublicKeyToken = db937bc2d44ff139'

1 个答案:

答案 0 :(得分:0)

您是否完全确定已在x86下编译应用程序,而不是AnyCPU?在处理为x86编译的像SQLLite这样的dll时,您的进程必须在x86模式下运行。