欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

OSError: [WinError 126] 找不到指定的模块问题解决方法

程序员文章站 2022-03-11 16:18:19
我的python程序在使用ctypes库调用C++程序创建的dll时,会产生如下错误:OSError: [WinError 126] 找不到指定的模块如引用了pytorch时,会出现下述问题:对于这类问题进行排查,经百度后发现,引起此类问题的主要原因有二:(1)没有找到该DLL文件,路径不对或者被杀毒软件隔离;(2)你的DLL动态库依赖于其他其他DLL动态库无法被系统找到。在Python里面载入dll时,如果这个dll还依赖于其它的dll的话,这些相关的dll也得要能被Python的进程...

我的python程序在使用ctypes库调用C++程序创建的dll时,会产生如下错误:

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

如引用了pytorch时,会出现下述问题:
OSError: [WinError 126] 找不到指定的模块问题解决方法
对于这类问题进行排查,经百度后发现,引起此类问题的主要原因有二:

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

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

解决方法:

  • 对于原因一,可以把文件路径改为绝对路径;把杀毒软件关闭重新操作。

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

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

本文地址:https://blog.csdn.net/m0_46201444/article/details/108852621