flysun027

有思想的博客
随笔 - 32, 文章 - 0, 评论 - 22, 阅读 - 74182

导航

< 2025年2月 >
26 27 28 29 30 31 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 1
2 3 4 5 6 7 8

sqlite bundle 的含义,和 sqlite.dll, SQLite.Interop.dll, System.Data.SQLite.dll 三者之间的关系。

 

bundle 表示不需要配合 SQLite.Interop.dll,而 非Bundle 则必须需要 SQLite.Interop.dll 放到输出目录。

 

1. 使用 bundle 版本只需要引用 System.Data.SQLite.dll 就可以正常使用 sqlite 的数据库文件了。

2. 使用 非bundle 版本则需要和项目编译目标相一致 x86 或 x64 版本的 SQLite.Interop.dll 才能正常操作

 

后记:

1. 按我的记忆 SQLite.Interop.dll 是 sqlite.dll 的函数的 c# 直接导出库,并且包含了 c 编译的 sqlite.dll 模块,通常文件体积较大。

2. 也可以手动编译出不包含 sqlite.dll 模块的单独的函数导出dll。这时 SQLite.Interop.dll 的文件体积会非常小。需要 sqlite.dll 配合才能正常工作。

3. 所以 c# 程序可以直接引用带 sqlite.dll 模块的 SQLite.Interop.dll。也可以引用不带 sqlite.dll 模块的 SQLite.Interop.dll,再外挂一个 sqlite.dll。如果需要使用 ado.net 的话就需要引用 System.Data.SQLite.dll。

 

记录一下,时间一长就容易忘。

相关博文:
阅读排行:
· 在鹅厂做java开发是什么体验
· 百万级群聊的设计实践
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
点击右上角即可分享
微信分享提示