![]() |
Модераторы: Snowy, bartram, MetalFan, bems, Poseidon, Riply |
![]() ![]() ![]() |
|
jonimimoni |
|
|||
Новичок Профиль Группа: Awaiting Authorisation Сообщений: 10 Регистрация: 28.9.2007 Репутация: нет Всего: нет |
Доброго времени суток.
Прошу помощи в решении проблемы определения активного окна IExplorer и изъятия из него URLа. ТЕХЗАДАНИЕ: - программа свёрнута и реагирует на нажатие F12(использую хуки, эта часть работает); - дополнительно открыто n-ое число (5-20) окон IExplorer6 (без вкладок, одно окно - один URL), одно из них активно; - требуется по нажатию F12 получить доступ именно к !!!активному окну!!! и извлечь из него URL, после закрыть это окно, таким образом следующее становиться активным; - нажимать кнопку пока не закончатся окна IExplorer6; Использовал готовую функцию:
но когда открыто больше одного IExplore, данная функция перестаёт работать. Интуитивно догадываюсь, что необходимо получать дескриптор\хендл или что ещё активного окна IExplore и с ним уже работать, но и функция будет другая и метод обработки. Так же понимаю что ответ скрыт тут, но знаний моих не хватает чтобы это осилить. В связи с вышесказанным прошу помощи в разъяснении или ссылками, а за готовый код буду очень признателен. |
|||
|
||||
Rrader |
|
|||
Inspired =) ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1535 Регистрация: 7.5.2005 Репутация: 29 Всего: 191 |
Попробуй GetForegroundWindow и проверь, что окно - действительно от IE (класс окна должен быть IEFrame). Зная хэндл, текст можно вытянуть через IAccessible |
|||
|
||||
jonimimoni |
|
||||||||
Новичок Профиль Группа: Awaiting Authorisation Сообщений: 10 Регистрация: 28.9.2007 Репутация: нет Всего: нет |
Спасибо Rrader за Ваш ответ
![]()
Теперь вторая часть марлизонского балета, на месте $$$ должен быть код по вытягиванию URL, но...
с этим засада, поскольку при компиляции (там есть готовый проект, призванный помочь понять IAccessible) возникла ошибка, отсутствует OLEACC.DCU Скачать в инете не получилось ![]() Было принято решение не использовать IAccessible а погуглить-пояндексить-подркбить и всего 2 достойных варианта: первый изложен в первом посте, а вот второй
В связи с этим просьба, помочь в написании фрагмента кода для получения URL из окошка с хендлом WND ![]() Заранее спасибо. Это сообщение отредактировал(а) jonimimoni - 12.3.2011, 00:57 |
||||||||
|
|||||||||
Rrader |
|
|||
Inspired =) ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1535 Регистрация: 7.5.2005 Репутация: 29 Всего: 191 |
Так ведь вопрос был в том, как получить активное окно, а не установить его? Прикрепил к посту Присоединённый файл ( Кол-во скачиваний: 12 ) ![]() |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi: WinAPI и системное программирование" | |
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, bartram, MetalFan, bems, Poseidon, Rrader, Riply. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: WinAPI и системное программирование | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |