【问题标题】:pywinauto import error for python 2.7python 2.7的pywinauto导入错误
【发布时间】:2017-01-14 18:12:47
【问题描述】:

我尝试在 python 2.7 中使用 pywinauto。使用 pip 安装按预期进行。但是当我尝试在 python 中导入 pywinauto 包时,出现以下错误:

Python 2.7.13 (v2.7.13:a06454b1afa1, Dec 17 2016, 20:53:40) [MSC v.1500 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import pywinauto
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "pywinauto\__init__.py", line 40, in <module>
from . import findwindows
File "pywinauto\findwindows.py", line 39, in <module>
from . import win32functions
File "pywinauto\win32functions.py", line 216, in <module>
shcore = ctypes.windll.LoadLibrary(u"Shcore.dll")
File "D:\Program Files\python-2.7\lib\ctypes\__init__.py", line 440, in LoadLibrary
return self._dlltype(name)
File "D:\Program Files\python-2.7\lib\ctypes\__init__.py", line 362, in __init__
self._handle = _dlopen(self._name, mode)
TypeError: LoadLibrary() argument 1 must be string, not unicode


>>> import pywinauto
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "pywinauto\__init__.py", line 40, in <module>
from . import findwindows
File "pywinauto\findwindows.py", line 39, in <module>
from . import win32functions
File "pywinauto\win32functions.py", line 35, in <module>
from . import win32defines, win32structures
ImportError: cannot import name win32defines

第一次导入抛出 "TypeError: LoadLibrary() argument 1 must be string, not unicode" 错误,而如果我再次尝试导入它会抛出导入错误:"ImportError: cannot import名称 win32defines"
如果有更多经验的人可以帮助我,那将很有帮助。

操作系统:赢得 10
蟒蛇:2.7.13
pywinauto:0.6

【问题讨论】:

    标签: pywinauto


    【解决方案1】:

    当我安装 2.7.13 时,在另一个模块中遇到了类似的问题。恢复到 2.7.12(win 7 64 位上的 32 位),问题就消失了。

    【讨论】:

    • 感谢您对 Zach 的洞察。降级到 2.7.12 有所帮助。
    • 是的,ctypes 自 Py 2.7.13 以来发生了一些变化。它将在pywinauto 0.6.1 中修复。
    猜你喜欢
    • 2012-01-25
    • 1970-01-01
    • 2017-05-11
    • 1970-01-01
    • 2018-09-03
    • 2011-05-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多