我正在做一个项目,它正在使用Mono.Data.Sqlite动态链接库使用sqlite,这样我的程序就可以跨平台运行在Windows上了。该程序成功构建,没有任何问题,但当我运行程序,它试图建立一个连接到数据库。
但是,我收到了一个错误
无法加载DLL‘sqlite3 3’:找不到指定的模块。(HRESULT例外: 0x8007007E)
下面是我如何连接到SQLite数据库的代码
public SqliteConnection conn = null;
private static string path = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);
private static string exeName = System.Reflection.Assembly.GetEntryAssembly().GetName().Name;
public static string DATABASE_PATH = path + string.Format("\\BoardiesITSolutions\\{0}\\{0}.db", exeName);
public ConnectSQLiteDatabase(string dbPassword)
{
try
{
Console.WriteLine("DB Password: {0}", Encryption.decrypt(dbPassword));
conn = new SqliteConnection("Data Source="+DATABASE_PATH+";Password="+Encryption.decrypt(dbPassword));
conn.Open();
}
catch (SqliteException ex)
{
Console.WriteLine("Open Error: " + ex.Message);
}
}谢谢你能提供的任何帮助。
发布于 2013-04-26 18:35:37
我已经解决了这个问题。
我为windows安装了预编译的二进制文件,并将该DLL导入到我的项目中,以便它在Windows上正常工作。然后从链接http://system.data.sqlite.org/index.html/doc/trunk/www/build.wiki#mono下载源代码并手动构建mono的DLL,并将其安装在linux服务器上,现在在这两个平台上都运行良好。
发布于 2016-03-01 10:21:04
试着安装:
sudo apt-get install libsqlite3-dev https://stackoverflow.com/questions/16223454
复制相似问题