Активировать вкладку другого приложения - PullRequest
1 голос
/ 26 ноября 2011

У меня запущено приложение с вкладками, и я хотел бы выбрать и перезагрузить определенную вкладку этого приложения из другого приложения. Какие методы / подходы вы бы предложили мне сделать сейчас?

Например, я заинтересован в перезагрузке веб-элемента управления вкладки браузера Opera, в настоящее время я открываю страницу на вкладке 1 и хочу, чтобы моя программа выбрала / сфокусировалась на вкладке 2. Любая помощь приветствуется.

1 Ответ

0 голосов
/ 26 ноября 2011

Вы можете использовать SendMessage () для этого.Это функция Windows, которая позволяет отправлять сообщения в окна, и эти окна не обязательно должны принадлежать вашему приложению.В Windows приложения могут быть идентифицированы по их дескриптору окна.Вы можете использовать HWND_BROADCAST, чтобы поразить все окна верхнего уровня, такие как браузер Opera.Сообщение используется, чтобы отличить, какое действие должно иметь место.Некоторые классические из них WM_PAINT (закрасить окно) и WM_QUIT (завершить приложение).Вы можете использовать такие инструменты, как Spy ++ , чтобы определить, какие сообщения необходимо отправлять.

В последних версиях Windows предусмотрена большая защита сообщений Windows, поэтому вы можете столкнуться с некоторыми препятствиями.Если оба приложения работают в одном сеансе рабочего стола, все должно быть в порядке.

Другой подход, который может вас заинтересовать, - это Window Hooking.Это более сложная тема, но есть отличная библиотека под названием EasyHook , которая поможет вам.

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