需要加载DLL才能在C#中使用SQLiteWrapper

时间:2010-08-11 18:18:13

标签: c# sqlite dll

我正在尝试使用C#访问我的数据库。数据库是SQLite,我试图像这样访问它:

string CurrentDatabase = Path.FullName + "\\stock.sqlite";

SQLiteBase db = new SQLiteBase(CurrentDatabase);

我使用的是我在这里找到的SQLite DLL来访问数据库:

http://www.codeproject.com/KB/database/cs_sqlitewrapper.aspx

但是我收到了这个错误:

  

无法加载DLL的'sqlite3':   找不到指定的模块。   (HRESULT异常:0x8007007E)

我想我知道什么是错的,我的系统上的任何地方都没有sqlite3 DLL ...但我希望这个应用程序是可移植的,所以我不能指望用户已经安装了这个DLL。我已经阅读过从另一个已经在某处获得此DLL的应用程序加载DLL,Firefox就是一个很好的例子。它安装在我所有的公司机器上,如果我可以将一些sqlite3 DLL从Firefox Program Files目录加载到我的应用程序中它应该可以正常工作,不是吗?如果这真的是解决方案,我需要帮助实际加载DLL,因为我不知道如何做到这一点。

感谢。

2 个答案:

答案 0 :(得分:4)

将sqlite3.dll复制到您的DLL包装器所在的同一目录中,并在完成后将其作为应用程序可分发的一部分提供,这样就不会出现与dll版本不匹配相关的废话..你可以下载来自http://sqlite.org

的最新版本

答案 1 :(得分:1)

我建议使用System.Data.SQLite,它是SQLite的ADO.NET提供程序。然后,您可以使用ADO.NET API进行编程。它的DLL包含sqlite3.dll,因此您不必包含它。