【问题标题】:How to tail text from a specific control from an external program?如何从外部程序的特定控件中拖尾文本?
【发布时间】:2015-04-05 09:27:15
【问题描述】:

我已尝试使用 Windows 的 8.1 软件开发工具包测试工具上提供的 Inspect.exe 检查此窗口。我似乎无法识别这个巨大的富文本框(如控件)的控制句柄。但是,我可以获得文本框下方编辑框的控制句柄。我希望我可以直接与控件对话并使用诸如WindowScrape 之类的库来获取文本。

我相信外部程序是用 VC++ 创建的。如果有帮助的话。

这是窗户。我正在尝试从中获取文本,该文本以红色框起来。这是一个聊天窗口,消息每 5 到 10 秒出现一次。此框会自动滚动。我想浏览文本并获取最新消息。

还有其他方法可以做到这一点吗?

Tesseract 可能,但我不知道从哪里开始监视相对于窗口的特定位置。这样当我移动窗口时,它仍然可以监视该窗口。

【问题讨论】:

  • 并非您在屏幕上看到的所有内容都必须是控件。因此,并非您认为是控件的每个小部件都有本机窗口句柄。 Inspect.exe 做了正确的事:它遍历小部件层次结构,查询UI Automation 提供程序。这也是你应该使用的。
  • May be 'White' 可以帮助你:github.com/TestStack/White,但是如果你抓不住手柄,这是一个大问题。你也可以试试 runorex - 他们擅长识别复杂的控件。
  • 另外,如果你只需要自动化而不是坚持使用 c#,也许你可以使用 'sikulli' sikuli.org

标签: c# .net winapi automation ui-automation


【解决方案1】:

您能否在选择聊天框时提供显示树和详细信息窗格的 Inspect 结果的屏幕截图?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-12-14
    • 1970-01-01
    • 2011-08-05
    • 1970-01-01
    • 2019-07-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多