notifyiconwpf和GUI自动化
问题描述:
我有一个应用程序使用这种应用程序类型,我需要自动化。不幸的是,我的自动化工具看不到应用程序窗口。有没有建议解决这个问题的方法?我使用pywinuto进行自动化。我甚至无法检查此应用程序的窗口数据。notifyiconwpf和GUI自动化
编辑:
from pywinauto import Application
from pywinauto import taskbar
app = Application().start("path/to/my/app")
#make the window visible
taskbar.ClickHiddenSystemTrayIcon("My App")
#When I query the number of windows the app has.
len(app.Windows())
#I get zero windows. There should be at least one window
#because the window is currently visible.
我也试过FindWindow函数方法,我可以得到一个WindowSpecification,但它没有连接到任何窗口。
答
为了使此应用成为可自动化,开发人员必须将NotifyIconWPF包装在标准窗口中,具体情况取决于命令行开关。一旦完成,pywinauto就可以访问该应用程序的窗口。它看起来像Caliburn Micro,故意为此窗口类别禁用辅助功能。
你可以在cmd提示符下运行应用程序吗? – jmoon
@jmoon我可以。它只是启动应用程序。 –
你使用哪个后端pywinauto?如果你创建'Application()'没有参数,它默认使用“win32”,这对于WPF应用程序是错误的。改用'Application(backend =“uia”)'。 –