无法加载 pywin32 库 win32gui

Posted

技术标签:

【中文标题】无法加载 pywin32 库 win32gui【英文标题】:Can't load pywin32 library win32gui 【发布时间】:2010-10-18 02:00:48 【问题描述】:

我正在尝试使用 pywin32 中包含的 win32gui 模块,但无法正常工作。

我已经下载并构建了它,并且所有内容似乎都位于 site-packages 下,我在 site-packages/win32/win32gui.pyd 找到了 win32gui.pyd,但是当我尝试导入它时,我得到:

import pyHook, win32gui
ImportError: DLL load failed: The specified module could not be found.

我需要将 dll 移到某个地方吗?如果有,是哪一个?

【问题讨论】:

【参考方案1】:

这行得通:

import pywintypes
#import pythoncom # Uncomment this if some other DLL load will fail
import win32gui

【讨论】:

我不认为这正是问题所要求的,但它解决了我的问题。我的系统上安装了 win32gui,但试图用 cx_freeze 打包所有内容。只包括 win32gui 在本地工作,但不能在其他系统上工作——包括 pywintypes 强制 cx_freeze 包括正确的 DLL。 这为我指明了正确的方向;为了让 pywintypes 导入,我必须将我的 virtualenv 中的 dll 从 Lib\site-packages\pywin32_system32 复制到 Lib\site-packages\win32\lib【参考方案2】:

我有同样的问题。我将 pywintypes34.dll 所在的路径添加到系统路径中,并且它起作用了。

在我的例子中是 C:\Python34\Lib\site-packages\pywin32_system32

【讨论】:

【参考方案3】:

我的猜测是 win32gui 依赖于一些不在您系统上的 DLL。你可以下载depends 看看你缺少什么。

但是我的第一次尝试是尝试从安装程序安装 pywin32,而不是通过构建它。

【讨论】:

嗯,丢失的 DLL 相当明显:p 只是不确定哪个 :) 取决于解决了这个问题,现在工作正常。感谢您的提示:)【参考方案4】:

首先检查您的系统中是否安装了“pywin32”模块。如果没有安装,请先安装它。 http://www.lfd.uci.edu/~gohlke/pythonlibs/#pywin32

如果问题仍然存在,那么现在为 /Lib/site-packages/pywin32_system32 并将此路径添加到系统库或将 pythoncom35.dll 和 pywintypes35.dll 添加到添加到系统路径的目录中。

【讨论】:

You previously posted this exact same answer to another question。请不要对多个问题发布相同的答案。选择最好的问题并在那里发布一个好的答案,然后标记以将其他问题关闭为重复问题。 (我已经处理过这种情况下的重复问题。)如果问题不重复,则必须tailor your answers specifically to each question【参考方案5】:

我尝试只“复制”一次 pywin32 软件包而不是安装它,它运行良好。

我所做的是:

    将所有相关包复制到 site-packages 文件夹 将 pythoncom25.dll 和 pywintypes25.dll 复制到 c:\windows\system32 文件夹(您可能需要更改为版本和系统路径)

希望对你有帮助

【讨论】:

复制这两个文件有帮助(它们位于 python 安装文件夹中)。【参考方案6】:

同样的问题,我从sourceforge 安装,然后以管理员身份运行 .exe。

【讨论】:

【参考方案7】:

我想要一个安装了pywin32模块的win32gui模块仍然错误“导入win32gui时DLL加载失败:找不到指定的模块”,我去了我的虚拟环境中的文件夹pywin32_system32文件夹并复制DLL并粘贴到里面win32 文件夹。 为我工作

【讨论】:

以上是关于无法加载 pywin32 库 win32gui的主要内容,如果未能解决你的问题,请参考以下文章

Pywinauto常用02--pywin32(Python调用win api)

python win32gui模块下载

pywin32win32apiwin32guiwin32comwin32con 都是啥?

AttributeError:模块'win32ctypes.pywin32.win32api'没有属性'错误'

python pywin32 里面操作窗体,获取窗体里面的数据,在函数GetDlgItem函数中,怎么获取第二个参数的值?

win32api win32gui win32con 窗口句柄 发送消息 常用方法