![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как програмно заблокировать pop-up окна?
leonidus © (2004-10-01 14:03:00)Пишу программку для блокировки pop-up окон в Internet Explorer`e, но столкнулся с проблемой как перехватить клик по ссылке в окне IE, т.е. вытинуть URL ссылки по которой делаеться клик?
Может кто-то сталикивался - пожалуйста подскажите, очень надо!!!
Ihor Osov'yak (2004-10-02 14:06:00) [1]2 Как програмно заблокировать pop-up окна?
Зачем? Снова велоситед изобретаем?
По существу.
Смотрите в сторону BHO (browser helper object). Там легко получаем в руки IWebBrowser2 от любой интстанции IE. Далее подписка на соотв. нотификационный интерфейс, с его BeforeNavigate, NewWindow, etс..
Правда, при таком подходе на уровне NewWindow трудно отличить результатом чего появляется новое окно - результат клика юзера, или результат срабатывания какого-то скрипта.. Более радикальным есть перехват IHtmlWindow2.Open - собственно по линии этого метода почти всегда идут попапы и почти никогда - результат клика по ссылке. Во всяком случае на нормальных сайтах. Ну и преимузество здесь то, что при перехвате IHtmlWindow2.Open сразу имеем в руках урл, а при работе на уровне NewWindow будет немного проблема с получением урл..
Dimaxx (2004-10-02 12:57:00) [2]Ставь СП2 на ХРюшу - там уже мелкософт все сделал для закрытия.
leonidus (2004-10-01 21:08:00) [3]это очень узко получится, хотелось бы более изящно на уровне системы а не юзера
gid (2004-10-01 14:58:00) [4]Ищи окна в системе и сравнивай их заголовоки со списком запрещенных или с размерами, а затем просто закрывай если совпадет.