无法使用 pywinauto select NASPT Exerciser 中的菜单项

Not able to select Menu items in NASPT Exerciser using pywinauto

我正在使用 pywinauto 来自动化 NASPT Exerciser 工具。

 app.IntelNASPerformanceToolkitExerciser.PhotoAlbum.Click().

点击相册按钮,

app.IntelNASPerformanceToolkitExerciser.all.Click()

点击全部。这不是 select 所有按钮。

app.IntelNASPerformanceToolkitExerciser.MenuSelect("Configure->NASPT Tool")

它抛出错误说不能 select 菜单到这个对象。

有没有其他方法可以解决上述问题? 有人可以帮忙吗?

这是 .NET 应用程序。 pywinauto 对 .NET 控件的支持非常有限。所以你需要为这样的工具栏使用 Windows UI Automation API。准确地说 InvokePattern 应该有助于按下工具栏按钮。

或者您可以尝试通过这样的硬编码坐标单击按钮:

app.IntelNASPerformanceToolkitExerciser.Children()[54].ClickInput(coords=(300, 10))

这种硬编码方式可能比处理相当复杂的 UI 自动化更好 API.

顺便说一句,你可能会得到 pywinauto clone with .NET programmatic names support。只需将其下载为 zip 和 运行 python setup.py install.
有了那个 mod 你可以这样编码:

app.IntelNASPerformanceToolkitExerciser.toolStrip.ClickInput(coords=(300, 10))

我刚查过。我认为硬编码坐标在这里是可以的,因为该软件已停产并且不会更改。没有那么多不受支持的 .NET 控件。