Python - pywinauto - 一个输入导致多个动作

Python - pywinauto - one input causes multiple actions

我正在使用 Python 和 pywinauto 进行一些程序安装程序自动化。但是,我偶然发现了一个我无法解决的问题。出于某种原因,在这个特定安装程序的这个页面上,当我使用 pywinauto 向 window 发送输入时,它似乎也向所有按钮发送输入,然后它最终点击了我命令的按钮。下面是导致问题的代码。似乎每当我查看 app.Dialog.ComboBox 时都会引发此问题,因为当我调用像 Rectangle 这样的方法时,我会遇到同样奇怪的错误。

app = Application(backend="uia").connect(title_re = 'My program name', timeout=1000)
app.Dialog.ComboBox2.click_input()

虽然我不得不使用另一个模块,但我能够找到解决问题的方法。我无法使用 pywinauto 解决这个问题。我怀疑这是模块编写方式的一个深层次问题,需要大量时间来修复。我改为使用 uiautomation 模块。下面是我对软件列表中 select 一项的代码。

import uiautomation

app = uiautomation.WindowControl(searchDepth=1, Name='WindowName')
app.Control(searchDepth=6, AutomationId = 'Products.BtnProductSet0.Cbx').Click()