-1

大家好,希望有人可以帮助我。

我编写了一个小型 WPF 应用程序,它读取 SQL 数据库的密码并将其显示在屏幕上供用户使用。它在 SQL DB 上运行良好,但我们已更改为使用 SQLite,虽然它在我的机器上运行良好(我已经编写了程序)但是当我将 .exe 文件提供给用户时,程序会在它们上崩溃,因为当他们单击 OpenFileDiaglog() 的按钮时(这样用户就可以选择数据库来检索密码)

经过一些试验和错误(注释掉部分代码),当它到达这一行时,它似乎会崩溃。

 SQLiteConnection Dbcon = new SQLiteConnection("Data Source= " + Myfile);

但是在机器上的事件查看器中,我尝试运行程序时出现错误是

说明:进程因未处理的异常而终止异常信息:System.IO.FileNotFoundException

我尝试在几台不同的机器(vista、xp、win 7)上使用 .exe 文件,所有这些机器上都安装了 .net framework 4.0。

就像我说的那样,只有当它被移动时,我的机器上的所有工作才会出现错误。

任何帮助将不胜感激

4

2 回答 2

0

因为你必须在用户机器上调整你的数据库路径,所以在部署时你的数据源上有错误的路径

Data Source= Path of your databse

我建议你这个代码

"Data Source=" + System.IO.Path.Combine(System.IO.Path. GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase), YourFile)
于 2013-03-26T10:11:53.370 回答
0

同样的问题,但这并没有为我解决。对我来说,问题是我的主要应用程序位于 .net 4 中,而 sql lite dll 是 .net 2,因此将useLegacyV2RuntimeActivationPolicy="true"其作为属性添加到 app.config 中的启动标记。

于 2016-11-21T14:24:47.800 回答