Python3.8未加载C dll

Python3.8未加载C dll,python,c,loadlibrary,python-3.8,Python,C,Loadlibrary,Python 3.8,我的工作代码在升级到Python 3.8.1后中断。下一行用于工作,但现在返回错误消息: cdll.LoadLibrary('mydllpath/mydll.dll') ==> Could not find module 'mydll.dll'. Try using the full path with constructor syntax. 有人建议将dll文件夹添加到dll搜索路径。因此,我将代码更改为: os.chdir('mydllpath') print(os.

我的工作代码在升级到Python 3.8.1后中断。下一行用于工作,但现在返回错误消息:

cdll.LoadLibrary('mydllpath/mydll.dll')
==> Could not find module 'mydll.dll'. Try using the full path with constructor syntax.
有人建议将dll文件夹添加到dll搜索路径。因此,我将代码更改为:

    os.chdir('mydllpath')
    print(os.listdir())  # Proof of success
    os.add_dll_directory('mydllpath')
    cdll.LoadLibrary('my.dll')
    # cdll.LoadLibrary('mydllpath/my.dll')  # Also unsuccessful
第二行代码中的print()将mydll.dll列为目录中的一个文件,但Python/cdll仍然返回完全相同的错误消息:“找不到…”

寻找想法/建议。谢谢…

好的,我解决了问题: Python返回错误消息:“找不到模块‘mydll.dll’”,无论是查找mydll、还是mydll依赖的另一个dll时遇到问题。Python 3.8.2还使错误消息更具描述性。

在我的例子中,mydll.dll依赖于位于目录树上一级的广泛使用的dll。当我使用os.add_dll_directory()将该文件夹添加到搜索路径后,程序又开始工作。

很难判断出是什么问题,但我猜升级后缺少一些依赖项。您可能需要重新编译。如果这不起作用,请提取并提供一个错误消息,并提供完整的(!)错误消息,包括回溯。Python向您发送属性时是否遇到问题错误:模块“os”没有属性“add_dll_directory”?这是我在操作系统时得到的。添加_dll_directory(dllpath)——dllpath当然是我所有驱动程序dll所在的主文件夹,这对我来说是一个新文件夹。想法:查看模块“os”以确保错误消息是正确的。