Обрабатывать нажатие кнопки в другом приложении - PullRequest
3 голосов
/ 30 августа 2011

Я ищу метод для получения события нажатия кнопки, похожий на this , который используется для получения указателя сразу после срабатывания события. Имеющаяся в виду кнопка находится в любом конкретном приложении Windows, которое я установил в качестве цели (кнопка Play проигрывателя Windows Media). Если вы знаете, какое сообщение перехватить сразу после нажатия кнопки «Воспроизвести».

Ответы [ 2 ]

3 голосов
/ 30 августа 2011

То, что вы ищете, это Global Mouse Hook. Вы можете взглянуть на эту статью: Обработка глобальных мышиных и клавиатурных хуков в C #

После обработки события CLICK вы можете использовать функции API, чтобы получить приложение / элемент управления под курсором ( WindowFromPoint ).

Вот еще одна статья с примером кода, которая поможет вам: .NET Object Spy и InvokeRemote (это похоже на spy ++)

Вы не можете сделать это без использования собственных методов Windows.

1 голос
/ 29 октября 2014

Пользователь отметил это в winapi. Он, наверное, уже знал о крючках. Часть ответа HABJAN указывает в правильном направлении. Ответ на вопрос: использовать Spy ++ Я не думаю, что есть сообщение для «нажата кнопка» или «нажата ссылка», но если вы заметите программу с spy ++, вы увидите сообщения с уведомлениями UI, подобные этим: WM_CAPTURECHANGED, WM_CHANGEUISTATE или даже WM_POSCHANGING. Я думаю, что это сообщения, которые вы ищете.

Другим способом сделать это может быть использование AutomationElement, см. Этот ответ: Получение URL-адреса текущей вкладки из Google Chrome с использованием C #

PS: Если бы я мог понизить редактирование другим пользователем вопроса, я бы понизил голосование Dyppl ... вопрос использовал очень точные слова: "получить сообщение" вместо "обрабатывать" в заголовке. PS2: Это старый вопрос, но я задавал мне тот же вопрос ранее и натолкнулся на него в google, возможно, мой ответ кому-нибудь поможет

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...