Windows,.NET阅读鼠标光标下的文本

是否有可能通过在后台工作的程序从窗口中获取鼠标光标下的文本?

是的,你可以使用P / Ivoke。 有些指点:

  • WindowFromPoint
  • ChildWindowFromPoint
  • AttachThreadInput
  • GetWindowText函数

我认为你必须做一个附加的线程输入,以允许从另一个进程的控件读取文本。

一种方法是获取鼠标光标位置和屏幕截图,然后从光标附近的截图中读取像素。

这个解决方案中最难的部分是从图片中识别文本,但是应该在某个地方有库文件。

在你走这条路之前,先看看AutoIt。 有一个名为“AutoIt窗口信息”的工具,会告诉你,如果任何Win32库可以看到选定的窗口中的文本。 如果你看不到文本,那么我建议你使用ManagedWinapi.dll ,捕获窗口句柄,使用返回的SystemWindow类的Image属性,并将其发送到OCR库。