64位SQLite.dll和任意CPU

4

经过一段时间的研究,我最终决定在这里发布一个问题。几天前,我在SQLite论坛上发布了同样的问题,但该网站目前无法访问。 http://sqlite.phxsoftware.com/forums/t/2669.aspx

所以,这是问题: 我有一台64位电脑和64位操作系统。我的同事有一台32位操作系统的64位电脑。我们开发一个Web应用程序,从服务器获取大量数据并将其保存在内存SQLite数据库中,以便所有东西都可以更快地运行。现在,我们在两台机器上都使用32位SQLite.dll。但是,我们想切换到64位dll(并增加我们可以使用和存储的数据量)。我已经从http://system.data.sqlite.org/index.html/doc/trunk/www/downloads.wiki下载了以下文件:sqlite-dotnet-x64-1007300.exe,并在我的机器上安装了它。我已经将System.Data.Sqlite.dll和System.Data.Sqlite.Linq.dll放入lib文件夹中,同时将Sqlite.Interop.dll复制到bin \ Debug文件夹中。 当我使用Any CPU调试应用程序时,在我的机器上一切正常,但是我的同事却出现错误。

我想使用64位dll并使用Any CPU构建exe文件,而不用担心系统是32位还是64位。这是否可能?如果可以,我应该怎么做才能实现呢? 先感谢您!

P.S. 我们使用C# - Visual Studio 2008 3.5 SP1


嗨,我有同样的问题。你是如何解决它的? - CeccoCQ
3个回答

7

今天,您不再需要这样做。只需确保像这样捆绑两个Interop DLL:

path_to_exe\System.Data.SQLite.dll
path_to_exe\x64\SQLite.Interop.dll
path_to_exe\x86\SQLite.Interop.dll

System.Data.SQLite.dll 会根据不同的平台找到正确的版本。


更详细的解释可以在这里找到:https://stackoverflow.com/a/52245480/101087 - NineBerry

2

我猜你需要同时提供32位和64位的SQLite.dll文件,并根据目标系统架构安装其中一个。


2

只需从nuget安装即可。它将安装两个版本,并将它们复制到不同的文件夹中,根据目标系统使用。只需将构建模式设置为“Any CPU”,您就可以开始使用了!
来自这里


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接