我正在尝试使用Spatialite beta版本3.0,因为我在64位计算机上使用Windows 7.
我sqlite3.OperationalError: The
specified module could not be found.尝试加载时始终遇到可怕的错误
libspatialite-4.dll.
我尝试过以下方法:
libspatialite-4.dll和所有其他dll在同一个文件夹中'PATH'环境变量c:\windows\system32文件夹中的所有dll (完成重启机器)c:\windows\sysWoW64文件夹中的所有dll (完成重启机器,这应该是32位dll,但我还是尝试过)我的代码如下:
import sqlite3
conn = sqlite3.connect(":memory:")
conn.enable_load_extension(True)
conn.execute('SELECT load_extension("libspatialite-4.dll")')
Run Code Online (Sandbox Code Playgroud)
注意 - 我也试过了完整的路径而没有运气.我记得在Windows XP 32位上遇到了同样的问题.我得到它的工作,但不记得我做了什么:(
UPDATE
我已经在32位Windows 7上测试了设置,并将所有dll放在System32文件夹中.因此,这表明64位设置存在一些问题.可能是我需要另一个版本的MSVC(我不认为Spatialite网站说哪个是必要的,所以我可能只需要猜测 - 我安装了MSVC2010)?
我知道之前有过类似的问题.但是,我在此发现的所有问题都涉及一些非常具体的系统设置,这些设置不适合我(因为我的也是如此).
系统:
如何激活' spatialitesqlite3'模块的扩展名?
我尝试了什么(类似问题的其他人说它有效的方式):
然后,跑步
import sqlite3
conn = sqlite3.connect(":memory:")
conn.enable_load_extension(True)
conn.execute('SELECT load_extension("libspatialite-2.dll")')
Run Code Online (Sandbox Code Playgroud)
给
conn.execute("SELECT load_extension('libspatialite-2.dll')")
sqlite3.OperationalError: The specified module could not be found.
Run Code Online (Sandbox Code Playgroud)
我还能尝试做些什么呢?