Получить выбранный текст из любого места за пределами приложения - PullRequest
0 голосов
/ 07 февраля 2020

Контекст:
Мне было поручено реализовать функциональность, чтобы иметь возможность получить выбранный в данный момент текст активного окна, а затем нажать зарегистрированную комбинацию горячих клавиш. Горячие клавиши, зарегистрированные с user32.dll RegisterHotKey
. Используется для обозначения номера телефона, который впоследствии будет переадресован на телефон, который будет звонить по этому номеру. Эти номера телефонов могут приходить из разных мест, некоторые из которых: в приложении, электронная почта, база данных.

Проблема:
Проблема возникает, когда браузер Chrome входит в изображение, Chome не отвечает на SendKeys или что-либо, что я на него брошу.

Вопрос:
Используя C#, как я могу получить отмеченный в данный момент текст из окна Chrome или из любого браузера в целом, так как он должен быть совместим с какой браузер пользователь предпочитает использовать?

Я пробовал:
До сих пор я пробовал множество различных методов и хаков, я пробовал user32.dll sendmessage , SendKeys, AutomationElement среди других дешевых хаков, которые уже давно были перезаписаны, поскольку просто выкидывали ошибки.
Мой текущий рабочий код взят из Github . Это работает по большей части при использовании Notepad ++ среди прочего. Обратите внимание, что это также не работает с разногласиями.

...