无法在Windows 8或10上的特定窗口上使用pywinauto单击按钮

时间:2015-10-21 08:11:06

标签: python pywinauto

我正在使用pywinauto执行应用程序的自动化测试。

它成功应用于应用的每个窗口,但由于某种原因,它无法在Windows 8和Windows 10上单击安装向导上的按钮。它适用于Windows 7。

使用

进行测试
  • python 2.7.10.amd64
  • pywinauto 0.5.3
  • Windows 10 x64

我可以获取按钮坐标,文本和其他所有信息,但我无法对其执行任何操作(单击,按键)

我得到的错误是:

File "C:\Python27\Lib\site-packages\pywinauto\controls\HwndWrapper.py", line 900, in ClickInput self, button, coords, double, wheel_dist = wheel_dist, use_log = use_log, pressed = pressed, absolute = absolute)  
File "C:\Python27\Lib\site-packages\pywinauto\controls\HwndWrapper.py", line 1778, in _perform_click_input  win32api.SetCursorPos((coords[0], coords[1])) pwintypes.error: (0, 'SetCursorPos', 'No error message is available')

谢谢!

1 个答案:

答案 0 :(得分:1)

您似乎正在尝试点击UAC确认窗口。你根本无法从任何脚本中做任何事情。请在Win8 / Win10机器上禁用UAC(零级别)。这是安装/卸载GUI自动化的唯一方法。

Python进程必须以管理员身份运行。

顺便说一句,一些安装程序允许静默模式(msiexec.exe /i [MSI_path]setup.exe /S用于NullSoft(NSIS)安装程序)。当然,如果您正在测试安装程序GUI本身,情况并非如此。