Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Взаимодействие программы с браузерами, IE / Opera / Mozilla(Firefox)... Maxthon 
:(
    Опции темы
BreakPointMAN
Дата 9.5.2006, 22:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 725
Регистрация: 15.9.2004
Где: Saratov

Репутация: 6
Всего: 24



Собственно, сабж. Интересует любая информация на темы:
  • написание плагинов для браузеров и надстроек над IE (в частности, для OperaMozillaFireFoxMaxthon и т.д.);
  • перехват ссылок и закачек из IE и других браузеров;
  • получение любой доступной информации от этих браузеров (например, URL текущей открытой страницы и т.д.);
  • формат хранения коллекций ссылок (aka "Избранное" в IE или "Закладки" в Opera) и возможные способы их импорта/экспорта;
  • и т.д.
Чем информации больше - тем лучше. Если у кого-нибудь есть интересные ссылочки по сабжу, прошу поделиться...   smile 

Что касается того, на чем и под чем пишем... 
Среда разработки: Borland C++ Builder 6 
Операционная система: Win9x/MEWin2kWinXP

Нашел кое-что по написанию плагинов для Internet Explorer'а на RSDNhttp://rsdn.ru/article/inet/ieplug.xml и http://rsdn.ru/article/inet/ieplug2.xml).

По Mozilla Firefox кое-что есть здесь: http://www.toolbar.net.ru .

Тем не менее, вопрос остается открытым...    

Это сообщение отредактировал(а) BreakPointMAN - 9.5.2006, 22:04


--------------------
"Разруха не в клозетах, а в головах." © Ф.Ф. Преображенский (М.Булгаков, "Собачье сердце")
PM WWW ICQ   Вверх
_hunter
Дата 10.5.2006, 19:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 8564
Регистрация: 24.6.2003
Где: Europe::Ukraine:: Kiev

Репутация: 24
Всего: 98



во-первых: IE и Maxthon -- суть одно и то же.
во-вторых: кто сказал что Opera, Mozilla -- надстройки?
ну и в-третьих: все эти браузеры используют разные подходы к перехвату/взаимодействию => спрашивать лучше на форумах разработчиков.

причем пример BHO для IE есть в MSDN' e
для мозил есть FlashGot (его исходники доступны)
 


--------------------
Tempora mutantur, et nos mutamur in illis...
PM ICQ   Вверх
BreakPointMAN
Дата 10.5.2006, 21:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 725
Регистрация: 15.9.2004
Где: Saratov

Репутация: 6
Всего: 24



Цитата(_hunter @  10.5.2006,  19:09 Найти цитируемый пост)
во-первых: IE и Maxthon -- суть одно и то же.

тем не менее, плагины для них пишутся по-разному...  smile  ибо Maxthon это не браузер в полном смысле этого слова, а оболочка, которая может использовать движки IE или Gecko для отображения веб-страниц.

Цитата(_hunter @  10.5.2006,  19:09 Найти цитируемый пост)
во-вторых: кто сказал что Opera, Mozilla -- надстройки?

поэтому у меня и написано 
Цитата(BreakPointMAN @  9.5.2006,  22:02 Найти цитируемый пост)
для браузеров и надстроек над IE

наверное, фразу нужно было построить немного по-другому... smile 

Цитата(_hunter @  10.5.2006,  19:09 Найти цитируемый пост)
ну и в-третьих: все эти браузеры используют разные подходы к перехвату/взаимодействию

Поэтому я и спрашиваю, быть может, у кого-то есть интересные/полезные ссылке по теме (исходники/статьи/документация и т.п.)

Цитата(_hunter @  10.5.2006,  19:09 Найти цитируемый пост)
=> спрашивать лучше на форумах разработчиков.

гмм... такое простое решение мне как-то не пришло в голову...  smile  smile да, пожалуй, это путь наименьшего сопротивления.


Цитата(_hunter @  10.5.2006,  19:09 Найти цитируемый пост)
причем пример BHO для IE есть в MSDN' e
для мозил есть FlashGot (его исходники доступны)

О'кей, спасибо за инфо, поищем-с...


PS: тем не менее, вопрос продолжает оставаться открытым. Буду признателен за любую стоящую информацию.  smile 
  

Это сообщение отредактировал(а) BreakPointMAN - 10.5.2006, 21:27


--------------------
"Разруха не в клозетах, а в головах." © Ф.Ф. Преображенский (М.Булгаков, "Собачье сердце")
PM WWW ICQ   Вверх
BreakPointMAN
Дата 28.5.2006, 10:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 725
Регистрация: 15.9.2004
Где: Saratov

Репутация: 6
Всего: 24



Пффф... итак, возвращаясь к баранам... Получение текущего URL и текущего окна заголовка в браузерах. Насколько я понял, существует три основных способа решения данной задачи:



1) Извращения с окнами
Очень ненадежный метод, с которым даже не хочется связываться. Заключается в том, чтобы находить буквально "вручную" нужные окна с помощью WinAPI-функций FindWindowGetWindow и пр., а затем получать необходимую информацию с помощью функции GetWindowText, посылки сообщения WM_GETTEXT и т.д. Зачастую нужно знать классы окон и их tab-последовательность, причем не факт, что ни то, ни другое не изменится в следующих версиях браузеров, да и что будет, например, если я возьму и сотру адрес из поля ввода?   smile  



2) DDE

Большинство браузеров являются DDE-серверами. Чтобы получить текущий URL, клиент должен установить соединение с сервером на тему (Topic) "WWW_GetWindowInfo" и выполнить запрос элемента данных (Item) "0xFFFFFFFF", результатом такого запроса будет строка c текущими адресом и заголовком окна:
Цитата
"http://www.yandex.ru/","Яндекс",""

Не очень удобно сделано, потому что потом эту строку еще нужно делить на составные части... Хорошо хоть, что они заключены в кавычки и разделены запятыми... но лучше, наверное, было бы, чтобы они передавались по-отдельности, или заключались в такие символы-разделители, которые не могут встретиться ни в адресе, ни в заголовке окна... Не знаю, могут ли встречаться кавычки и запятые в адресе, но в заголовке точно могут. Как отсюда корректно вырезать и то, и другое? Кстати, что за третья пустая строка, быть может, кто-нибудь знает? Она присутствует не всегда и не для всех браузеров...

Ну, а код на C++ Builder'е (в котором я пишу) будет выглядить примерно так:

Код

DdeClientConv1->SetLink("IExplore","WWW_GetWindowInfo");
Edit1->Text = AnsiString(DdeClientConv1->RequestData("0xFFFFFFFF"));
DdeClientConv1->CloseLink();


Вместо "IExplore" может, например, быть "Firefox" или "Mozilla" или "Opera"...
Теперь достаточно кинуть на форму TDdeClientConv и TEdit и прописать где нужно, данный код.

3) COM
А вот здесь, пока, полный мрак... Хотелось бы разобраться с тем, как можно выполнять те же самые задачи с помощью COM-технологии. Какие из браузеров ее поддерживают? Как это можно реализовать на C++ Builder? Приветствуются любые ссылки по теме. 


--------------------
"Разруха не в клозетах, а в головах." © Ф.Ф. Преображенский (М.Булгаков, "Собачье сердце")
PM WWW ICQ   Вверх
VictorGr
Дата 23.7.2007, 22:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 27.10.2006

Репутация: нет
Всего: нет



BreakPointMAN, пример COM: http://forum.vingrad.ru/forum/topic-164401...y1202167/0.html

Получать URL по DDE из IEXPLORER получается, но только самый крайний (последнюю открытую копию). А как можно перебрать все?

Вообще очень интересным было бы установить WWW_RegisterURLEcho, чтобы IE сам сообщал о новых страницах. Знает ли кто-нибудь как такое осуществить?
PM MAIL WWW   Вверх
Klin
Дата 23.7.2007, 23:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1938
Регистрация: 7.10.2002
Где: Краснодар

Репутация: 20
Всего: 25



Ребят, вас, что в финннскомм институте биистроого реагииирования учат?


--------------------
Я человек - попробуйте обвинить меня за это.
PM MAIL   Вверх
cerf_machine
Дата 10.8.2007, 09:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 43
Регистрация: 12.2.2007
Где: тебя носило?

Репутация: нет
Всего: 1



Цитата

финннскомм институте биистроого реагииирования учат? 

Не трогаем Финские универы, они Линуса выучилиsmile

По сабжу: а чем не подходит BHO? При использовании ATL разработка плагина упрощается до невозможности.

http://www.microsoft.com/rus/msdn/publish/..._hello_bho.mspx -- куда проще?
PM MAIL ICQ   Вверх
_hunter
Дата 10.8.2007, 11:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 8564
Регистрация: 24.6.2003
Где: Europe::Ukraine:: Kiev

Репутация: 24
Всего: 98



Цитата(cerf_machine @  10.8.2007,  09:44 Найти цитируемый пост)
По сабжу

наверное и ты не заметил, но вопрос задавался больше года назад => сильно сомневаюсь что твои советы актуальны.

Цитата(cerf_machine @  10.8.2007,  09:44 Найти цитируемый пост)
а чем не подходит BHO

а тем, что ни в опере ин в мозиле их нет. а про ие уже все сказали...


--------------------
Tempora mutantur, et nos mutamur in illis...
PM ICQ   Вверх
malor
  Дата 19.8.2009, 20:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 632
Регистрация: 17.11.2006

Репутация: нет
Всего: нет



Цитата(BreakPointMAN @ 9.5.2006,  22:02)
[*]перехват ссылок и закачек из IE и других браузеров;

Удалось что-нить накопать по данному вопросу ? 
Интересует осуществление перехвата из FireFox.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »


 




[ Время генерации скрипта: 0.0821 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.