如何使用.Net部署sqlite
我收到用户的报告,当他们安装我的 .net 2.0 应用程序时,他们收到一条消息,指出找不到 system.data.sqlite.dll 的引用。我使用 Inno 将其安装在与可执行文件相同的文件夹中,其他人没有出现任何问题。当我在 VS 中添加引用时,复制本地属性有什么区别吗?我的理解是这只影响在VS下运行它。只要用户将 sqlite 与可执行文件放在同一文件夹中,这不就是所需要的吗?是否存在阻止安装 dll 的权限或其他安全问题? sqlite.dll需要注册吗? -没有其他人必须这样做。
I got a report from a user that when they installed my .net 2.0 app they got a message that a reference to system.data.sqlite.dll could not be found. I use Inno to install it in the same folder as the executable and no problems from others. Does it make any difference what the copy local property is when I add the reference in VS? my understanding is that only impacts running it under VS. As long as the user has sqlite in the same folder as the executable, shouldnt that be all that is needed? could there be a permission or other secutity issue that blocks installing the dll? does sqlite.dll need to be registered? -no one else has had to.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
正如已经指出的那样,这可能是一个架构问题。事实上,我们在 Oracle 上也遇到了同样的问题。
你有吗?解决方案:
如果您没有使用 SqlLite,您可能想看看 SqlCe。安装程序已经存在,并且可以作为 Visual Studio 中的先决条件使用,并且很可能它们可能已经安装在某些客户端计算机上。
As has been pointed out this is probably an architecture problem. We are in fact having the same issue with Oracle.
You have ? solutions:
If you are not tied to SqlLite you might want to take a look at SqlCe. The installers are already there and available as prerequisite in visual studio and chances are they it is probably already installed on some client machines.
是的,如果它位于包含可执行文件的文件夹中,则它可以工作。但是您必须处理 32 位和 64 位架构,为此有单独的程序集。 32位在/System.Data.Sqlite.dll中,64位在/x64/System.Data.Sqlite.dll中。
Yes, if it is in the folder with the executable, it works. But you will have to deal with 32 bit an 64 bit architectures, there are seperate assemblies for that. 32 bit is in /System.Data.Sqlite.dll, 64 bit in /x64/System.Data.Sqlite.dll.