python - Windows 上的 ctypes : depending dlls not found

标签 python windows dll ctypes

我尝试加载依赖于“Rblas.dll”的共享库“R.dll”,两者都在同一目录中。 当我用 ctypes(加载共享库的 python 模块)加载 R.dll 时

import ctypes
lib = ctypes.CDLL("/path_to_r/bin/i386/R.dll")

我收到一条错误消息,指出未找到“Rblas.dll”。

我能做什么?我认为将两个库放在同一个目录中就足够了。

最佳答案

您可能需要将 dll 所在的路径添加到 %PATH% 环境变量中。当 R.DLL 使用显式路径加载时,对其请求的 RBLAS.DLL 的搜索仍在搜索 %PATH% 以查找其位置。由于这是 Windows 级别的操作,因此没有(简单的)方法可以从 python 拦截和修改它...因此需要更改 %PATH% 。

虽然交替地,你可以暂时os.chdir到所需目录,加载dll,并恢复os.getcwd的原始值在加载 dll 之后。

关于python - Windows 上的 ctypes : depending dlls not found,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7079408/

相关文章:

c# - 如何将 vlc 媒体播放器嵌入到我的 C# Windows 窗体应用程序中?

c++ - Windows 已触发断点

python - 为什么 virtualenv 不创建 DLLs 文件夹?

c++ - 如何在 Windows 上正确实现 CaptureStackBackTrace

c++ - 抛出异常...访问冲突读取位置

c++ - 无法调用dll文件中的线程

python - 使用模板标签在html模板中求和

python - 如何用 Python 解决这个数学难题?

python - 为什么 xframe_options_exempt 不适用于我的 Django View ?

python - 第一次运行后出现 Scrapy 'twisted.internet.error.ReactorNotRestartable' 错误