找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 4561|回复: 1

[求助] 关于使用pywinauto无法获得窗体的问题

1

主题

1

帖子

1

积分

贫民

积分
1
lee110 发表于 2019-11-21 10:32:34 | 显示全部楼层 |阅读模式
代码如下:
  1. from pywinauto.application import Application
  2. app = Application(backend="win32").start("NCRE考试系统.exe")
  3. dlg = app.window(title="NCRE考试系统3.30 安装程序")
  4. dlg.print_control_identifiers()
复制代码
可以启动软件,但会报错
Warning (from warnings module):
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\pywinauto\application.py", line 1087
    UserWarning)
UserWarning: 32-bit application should be automated using 32-bit Python (you use 64-bit Python)
Traceback (most recent call last):
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\pywinauto\application.py", line 258, in __resolve_control
    criteria)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\pywinauto\timings.py", line 458, in wait_until_passes
    raise err
pywinauto.timings.TimeoutError

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "D:\m\xx.py", line 7, in <module>
    dlg.print_control_identifiers()
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\pywinauto\application.py", line 613, in print_control_identifiers
    this_ctrl = self.__resolve_control(self.criteria)[-1]
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\pywinauto\application.py", line 261, in __resolve_control
    raise e.original_exception
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\pywinauto\timings.py", line 436, in wait_until_passes
    func_val = func(*args, **kwargs)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\pywinauto\application.py", line 203, in __get_ctrl
    dialog = self.backend.generic_wrapper_class(findwindows.find_element(**criteria[0]))
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\pywinauto\findwindows.py", line 87, in find_element
    raise ElementNotFoundError(kwargs)
pywinauto.findwindows.ElementNotFoundError: {'title': 'NCRE考试系统3.30 安装程序', 'backend': 'win32', 'process': 12176}


用Spy++Lite 查看到了窗体的标题的确是“NCRE考试系统3.30 安装程序”
捕获.JPG
百度了好久 没发现代码上有什么错误,就是无法得到窗体对象。请问这该如何解决?谢谢!

复制代码


回复

使用道具 举报

1

主题

2

帖子

2

积分

贫民

积分
2
luo98 发表于 2022-12-7 15:57:03 | 显示全部楼层
你问题怎样解决的?我也碰到这个问题。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表