net中应用sqlit时加载其dll的问题

本文记录了在64位Win7环境下使用VS2012 C#开发过程中遇到的SQLite数据库问题。主要探讨了不同版本SQLite DLL(包括32位与64位、bundle与非bundle版本)在项目中的配置及运行时遇到的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近写应用程序需要用到SQLite数据库,首次接触这个第三方库遇到了些问题这里记录一下。

我在64位win7上做开发,用的是VS2012 C#,生成选项选的是X86。

SQLite官方提供了多种版本的dll下载,其中分32位、64位以及bundle、非bundle版本(还分预编译与源码,setup等版本,我用的都是预编译版本)。


一 bundle版本提供3个dll文件,相比非bundle少了一个SQLite.Interop.dll文件,使用时只要把这3个文件复制到项目文件夹下然后项目中引用一下即可(我用的是C#,其他环境我不知道什么情况,下同)。

二 使用非bundle版本时同样只把3个dll文件复制到项目文件夹并在项目中引用这3个dll文件,不同的是得另外把SQLite.Interop.dll复制到exe程序目录,项目中无需引用,否则程序会提示无法加载SQLite.Interop.dll文件。(奇怪的是这个SQLite.Interop.dll文件无法直接在项目中添加引用,会报错,不知道这个文件与普通dll有何区别)。

三 用64位bundle版本运行时提示加载错误格式的文件(不会提示无法加载SQLite.Interop.dll文件,因为该版本不需要这个文件)。

四 用64位非bundle版本提示无法加载SQLite.Interop.dll文件。

五 用32位非bundle版本正常运行。


32位bundle版本未测试。


有个网友遇到这个问题,虽然他提供的方法没解决我的问题,但是做个记录也好:

http://blog.youkuaiyun.com/hsg77/article/details/7284387

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值