c# - 怀特如何处理已经运行的应用程序?

标签 c# white-framework microsoft-ui-automation

我正在使用 testStack/White 库来自动化应用程序。现在它工作正常,但如果应用程序已经在运行,它会抛出异常。有什么方法可以进行检查,例如,如果应用程序已经在运行,则不要调用它。我的意思是,那么我们可以跳过这行代码

Application application = Application.Launch(@"someapplication.exe");

我找不到任何关于 White 的好文档。 任何帮助将不胜感激。

最佳答案

你可以这样做:

Application application;
Process[] processes = Process.GetProcessesByName(@"someapplication");
if (processes.Length == 0)
  application = Application.Launch(@"someapplication");
else
  application = Application.Attach(@"someapplication");

快乐编码

关于c# - 怀特如何处理已经运行的应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25677410/

相关文章:

c# - 如何使用 UI 自动化从 Edge 浏览器检索文本

c# - String.Substring() 似乎是这段代码的瓶颈

continuous-integration - 如何运行 White + Teamcity(Winforms 应用程序)

c# - Azure AppendBlob 的属性 AppendBlobCommissedBlockCount 为 null

c# - 如何使用 White 在 datagridview 中勾选或取消勾选复选框

winforms - 如果我以编程方式激活另一个应用程序中的窗口,我可以检测到它何时失去焦点吗?

c# - Windows UI Automation API 在服务器上运行时找不到子元素

c# - 正则表达式匹配前两次出现的大写字母后跟几个小写字母

c# - 如何确定 32 位操作系统上的处理器是否支持 64 位