【发布时间】:2017-10-31 16:00:12
【问题描述】:
我无法使用 White 框架进入文件资源管理器窗口。我在文件资源管理器上使用了 Window 的 10 SDK 检查工具来获得这个: Inspect Image
如您所见,窗口名称为空。
为了抓取窗口,至少从他们的docs,您需要使用带有名称的GetWindow。我使用了这个代码块:
Application application = Application.Launch("C:\\Window\\explorer.exe");
System.Threading.Thread.Sleep(10000);
List<Window> windows = Desktop.Instance.Windows();
for (int i = 0; i < windows.Count; i++)
Console.WriteLine(i + ". " + windows[i]);
Window fileExplorer = application.GetWindow("");
循环输出显示所有窗口:(2. 很可能是文件资源管理器)
0: C:\Users\admin\Documents\Visual Studio 2017\foo.exe
1: foo(运行)-Microsoft Visual Studio
2:
3:项目经理
GetWindow 会显示这个:
等待 30 秒后,在进程 6296 中找不到标题为 6296 的窗口
当在检查中给出名称时,我已经让 Teststack White 与其他应用程序一起使用,所以它似乎不是 Teststack White 的问题,而是文件资源管理器,因为它没有名称。不过,有没有其他方法可以让 TestStack 抓取文件资源管理器窗口。
TL;DR:如何让 TestStack White 框架抓取 Window 的文件资源管理器窗口以便向其发送命令?
【问题讨论】:
标签: c# ui-automation white-framework