使用带有 OleAcc 的 Delphi XE2,我能够遍历 Google Chrome 窗口的所有 IAccessible 子对象,get_AccName
并get_AccValue
分别使用 和 获取它们的 NAME 和 VALUE,以搜索包含 URL 作为 IAccessible VALUE 的 Omnibox 控件。不幸的是,Chrome 中的 IAccessible NAME 是本地化的,因此在具有德语 UI 语言的 Chrome 中,要识别 Omnibox 控件,我必须使用 IAccessible NAME“Adress- und Suchleiste”,它适用于 Chrome 中的德语 UI 语言。这个 IAccessible NAME 对于每种 Chrome UI 语言都是不同的,因此要使用所有 Chrome UI 语言识别 Omnibox 控件,我必须将所有 Chrome IAccessible 子对象与 Omnibox 控件的所有本地化 IAccessible NAME 变体进行比较。所以我的问题是:
是否有其他方法可以独立于 UI 语言来识别 Omnibox IAccessible 子对象?
我使用 MS Inspect.exe 在 Chrome 中查看 Omnibox 子对象的所有 IAccessible 属性,但没有找到任何似乎对此有用的东西。