![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
ПОМОГИТЕ!!! как прикрутить к IEParser'у события WebBrowser'а [D7, Win2k, WinXP]
w666w © (2004-05-17 02:33:00)Добрый день, мастера! Более года я пыаюсь найти решение следующей проблемы, но к сожалению безрезультатно. Очень прошу Вас о помощи. Сразу оговорюсь, что вопрос очень сложный и не ругайте за то, что чайник полез туда, куда ему лезть не стоит.
КАК ПРИКРУТИТЬ К IEParser'у СОБЫТИЯ WebBrowser'а. Например:
WB2NewWindow2
IEParser не самый распространенный компонент в инете, ссылка на него:
www.p-hosting.com/extended ieparser v2.zip
-----------------------------------------------------------
Я прекрасно понимаю, что события WB это события интерфейса IWebBrowser2, который не реализован непосредственно в самом IEParser'e. Но есть же способ их каким либо образом унаследовать? Ведь если загрузить в парсер страницу со скриптом
<script>window.open(' http://адрес_открываемого_окна')</script>
то новое окно все же откроется! Что же получается, действие есть, а события нет?
Профи по COM, пожалуйста, разжуйте ответ как для чайника, очень желательно хоть какой нибудь пример.
БЬЮСЬ БОЛЬШЕ ГОДА! ВЗЫВАЮ О ПОМОЩИ!
nikkie (2004-05-21 19:31:00) [21]варианты решения
1. использовать WebBrowser
2. отключить javascript
3. реализовать IDispatch и IDocHostUIHandler и передать его через ICustomDoc::SetUIHandler. после этого пытаться отловить момент создания окна. вероятно, что в IDispatch::Invoke будет приходить какая-нибудь команда. может быть вернуть реализованный IDispatch в IDocHostUIHandler::GetExternal и опять смотреть, что будет в IDispatch::Invoke. а может (и даже скорее поможет) реализовать еще IHTMLWindow2 и перекрыть IHTMLWindow2::open. но гарантий не даю. надо пробовать.
w666w (2004-05-21 17:58:00) [22]Все же надеюсь, что найдется мастер, который сможет помочь...
w666w (2004-05-19 13:01:00) [23]Неужели темы like "Ссылки из WebBrowser" это максимальный уровень вопроса, на который можно получить ответ? Где гуру (Ihor Osov'yak, Polevi, panov, Digitman)?