如何使用.Net部署sqlite

时间:2010-09-16 15:25:18

标签: c# .net sqlite dll

我收到了一位用户的报告,当他们安装我的.net 2.0应用程序时,他们收到一条消息,指出无法找到对system.data.sqlite.dll的引用。我使用Inno将其安装在与可执行文件相同的文件夹中,并且没有其他问题。在VS中添加引用时,复制本地属性有什么不同?我的理解是只在VS下运行它的影响。只要用户在与可执行文件相同的文件夹中有sqlite,那么不应该只需要它吗?可能存在阻止安装dll的权限或其他严重性问题? sqlite.dll需要注册吗? - 没有其他人必须这样做。

2 个答案:

答案 0 :(得分:4)

是的,如果它位于包含可执行文件的文件夹中,则可以正常工作。但是你将不得不处理32位64位架构,有单独的程序集。 32位在/System.Data.Sqlite.dll中,64位在/x64/System.Data.Sqlite.dll中。

答案 1 :(得分:0)

正如已经指出的那样,这可能是一个架构问题。事实上,我们遇到了与Oracle相同的问题。

你有吗?解决方案:

  1. 创建两个安装程序,一个x86和一个x64,使用相应的sql lite dll。
  2. 创建一个智能安装程序,将相应的dll复制到bin文件夹中。
  3. 将相关的sql lite安装到gac中。您可能需要为此创建安装程序,您可能希望将其设置为应用程序的先决条件。
  4. 如果您不依赖于SqlLite,您可能需要查看SqlCe。安装程序已经存在并可作为visual studio的先决条件,很可能已经安装在某些客户机上。