我正在使用C#并使用sqlite并将这些文件与我的程序一起发送
SQLite.Interop.dll System.Data.SQLite.dll
在myprogram.exe旁边
我的程序是这样安装的。
C:\ Program Files \ MyAPPlication \ myprogram.exe
我收到错误报告并崩溃,因为用户计算机正在使用此位置的SQLite
[System.Data.SQLite] System.Data.SQLite.SQLiteCommand : System.Data.SQLite.SQLiteStatement GetStatement(int ) in 'c:\dev\sqlite\dotnet\System.Data.SQLite\SQLiteCommand.cs' at Line 314, Column 35
我不明白为什么它没有使用我在程序中打包的版本。
在我的所有代码中,我都是这样使用它。
using (SQLiteConnection sqLconnect = new SQLiteConnection("Data Source=" + Class_GlobalVars.StrDbPath + ";Version=3;PRAGMA journal_mode=OFF;"))
{
//code
}
有谁能告诉我为什么c:\ dev \ sqlite \ dotnet \ System.Data.SQLite被引用?
谢谢, 戴夫
答案 0 :(得分:1)
堆栈跟踪中指定的路径不是找到dll的路径,而是编译dll的路径。它与部署位置上的路径不匹配(开发中除外)。
在您的完整例外情况下提出一个新问题以寻求帮助。它可能与SQLite的位置或版本无关。