ScreenReaders如何从聚焦Windows获取文本信息?

时间:2013-07-24 17:22:45

标签: windows winapi

屏幕阅读器通过我认为的Windows API访问其他程序中的信息。任何人都可以评论这是如何完成的,并提供一些文档的链接?

我应该注意哪些严重的限制?

如果您对其他操作系统中的工作原理了如指掌,那么

2 个答案:

答案 0 :(得分:3)

大多数屏幕阅读器使用UI Automation来访问其他程序中的信息。有些应用程序不以这种方式提供可访问性信息(糟糕的程序员!糟糕!糟糕!),因此一些屏幕阅读器使用mirror drivers拦截低级绘图操作,然后从那里重新生成应用程序的信息。 (我不推荐这个;它很痛苦,容易挂起你的系统,在Windows 8及更高版本中不受支持。但是,如果你真的必须这样做,那么你真的必须这样做。)

虽然我对它不熟悉,但IOS有类似的东西。堆栈溢出上的有用标签是[ui-automation]和[Microsoft-ui-automation]。

答案 1 :(得分:1)

屏幕阅读器通常通过Microsoft Active Accessibility and/or UI Automation访问用户界面。