在非GDI应用程序中获取插入位置

所以我正在写一个需要知道文本input符号位置的可访问性应用程序。 我尝试了GUIThreadInfo,但是在基本应用程序(如记事本)中工作时,在处理自己的UI的Chrome,iTunes等更复杂的应用程序中失败。

有没有办法像这样的应用程序获得插入位置?

是的,不行。 插入符是user32的实现细节,与窗口相关联。 像浏览器这样的应用程序不使用窗口控件,太昂贵了。 而且他们不需要,有一个单独的API来允许这样的程序提供一个界面,像屏幕阅读器一样的辅助功能。 开始阅读这里 。 从C#应用程序不容易使用, 这个项目可以减轻痛苦。 没有背书,从来没有实际使用过自己。