OSError: [WinError 126] 找不到指定的模块 —— 解决办法

个人python程序在使用ctypes库调用C++程序建立的dll时,会产生以下错误:python

OSError: [WinError 126] 找不到指定的模块spa


经百度后发现,引发此类问题的主要缘由有二:进程

1)没有找到该DLL文件,路径不对或者被杀毒软件隔离;io

2)你的DLL动态库依赖于其余其余DLL动态库没法被系统找到。在Python里面载入dll时,若是这个dll还依赖于其它的dll的话,这些相关的dll也得要能被Python的进程访问到。table

 

解决方法:class

对于缘由一,能够把文件路径改成绝对路径;把杀毒软件关闭从新操做。百度

对于缘由二,最基本的解决方式是把相关的DLL 动态库也导进来,这样问题基本就能解决。若是没法肯定相关DLL 动态库,引发这类问题的缘由极可能是因为你的目标主机没有安装相关的C++环境。解决方法:下载Visual C++ Redistributable运行库,64位版本下载地址为 https://www.microsoft.com/zh-cn/download/confirmation.aspx?id=48145软件


最终,下载这个运行库后问题完美解决。下载