如何解决python 3.8找不到Windows dll文件,但是python 3.7可以
我正在尝试加载位于C:\ Windows \ System32文件夹中的Windows dll“ ibfs64.dll”:
ctypes.windll.LoadLibrary('ibfs64.dll')
这在Python 3.7.9(可从python.org下载)以及运行Python 3.7.9和Python 3.8.5的两个不同的anaconda环境中均可使用。
但是,当我尝试使用从python.org下载的Python 3.8.5进行此调用时,调用失败并
FileNotFoundError:找不到模块“ ibfs64.dll”(或其依赖项之一)。尝试使用带有构造函数语法的完整路径。
当我将dll-diagnostics跟踪实用程序与anaconda管理的Python 3.8.5安装一起使用时,它将成功:
DLL诊断工具版本0.0.3 版权所有(c)2019 Adam Rehn
解析模块头并检测体系结构...完成。
确定模块的延迟加载依赖性...完成。
已解析的模块详细信息:模块:C:\ Windows \ System32 \ ibfs64.dll 类型:动态链接库体系结构:x64
该模块导入0个延迟加载的依赖项:
为C:\ Windows \ System32 \ ibfs64.dll执行LoadLibrary()跟踪... 完成。
LdrLoadDll调用摘要:C:\ Windows \ System32 \ ibfs64.dll已加载 成功
LdrpLoadDll的摘要内部调用:C:\ Windows \ System32 \ ibfs64.dll
已成功加载NTDLL.DLL已加载 成功LdrpMinimalMapModule调用摘要: C:\ Windows \ System32 \ ADVAPI32.dll
成功映射C:\ Windows \ System32 \ ibfs64.dll
成功映射C:\ Windows \ System32 \ msvcrt.dll
成功映射C:\ Windows \ System32 \ RPCRT4.dll
成功映射C:\ Windows \ System32 \ sechost.dll
映射成功 C:\ Windows \ WinSxS \ amd64_microsoft.vc80.crt_1fc8b3b9a1e18e3b_8.0.50727.9672_none_88e266cb2fac7c0d \ MSVCR80.dll 映射成功LdrpResolveDllName调用的摘要:ibfs64.dll
C:\ Windows \ System32 \ ibfs64.dll MSVCR80.dll
C:\ Windows \ WinSxS \ amd64_microsoft.vc80.crt_1fc8b3b9a1e18e3b_8.0.50727.9672_none_88e266cb2fac7c0d \ MSVCR80.dll
但是当我尝试从python.org安装了Python 3.8.5时,它失败了:
DLL诊断工具版本0.0.3 版权所有(c)2019 Adam Rehn
正在解析模块头并检测体系结构...追溯(最近一次调用为最后一次):
_run_module_as_main中的文件“ c:\ users \ chris \ appdata \ local \ programs \ python \ python38-32 \ lib \ runpy.py”,第194行
返回_run_code(代码,main_globals,无,
文件“ c:\ users \ chris \ appdata \ local \ programs \ python \ python38-32 \ lib \ runpy.py”,第87行,在_run_code中
exec(代码,run_globals)
文件
中的第7行,文件“ C:\ Users \ Chris \ AppData \ Local \ Programs \ Python \ Python38-32 \ Scripts \ dlldiag.exe_ main _。py”文件“ c:\ users \ chris \ appdata \ local \ programs \ python \ python38-32 \ lib \ site-packages \ dlldiag \ main.py”,主行中的第29行
子命令[子命令]“功能”
文件“ c:\ users \ chris \ appdata \ local \ programs \ python \ python38-32 \ lib \ site-packages \ dlldiag \ subcommands \ trace.py”,行188,在跟踪中
header = ModuleHeader(args.module)
文件“ c:\ users \ chris \ appdata \ local \ programs \ python \ python38-32 \ lib \ site-packages \ dlldiag \ common \ ModuleHeader.py”,第14行, init
self._pe = pefile.PE(模块,fast_load = True)
init
中的文件“ c:\ users \ chris \ appdata \ local \ programs \ python \ python38-32 \ lib \ site-packages \ pefile.py”,行1754 >自己。解析(名称,数据,快速加载)
文件“ c:\ users \ chris \ appdata \ local \ programs \ python \ python38-32 \ lib \ site-packages \ pefile.py”,行1797,以解析
stat = os.stat(fname)
FileNotFoundError:[WinError 2]系统找不到指定的文件:'C:\ Windows \ system32 \ ibfs64.dll'
实际上,我什至无法在Python 3.8.5的python.org安装中打开文件,而在Python 3.7.9的python.org安装中却无法打开。
anaconda管理的安装有何不同之处?为什么从python.org成功安装Python 3.7.9,而从3.8.5无法成功安装?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。