ОБСУЖДЕНИЕ

Как получить Html страницу до компонента Webbrowser

2 ответов 7,8 тыс.
AI-выжимка обсуждения скоро

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

Статус
Закрыто для дальнейших ответов.
Автор темы
Всем привет!
Меня интересует, как можно получить страницу до её отображения в компоненте WebBrowser. Смысл следующий: нужно получить страницу и вырезать из неё определённые рисунки или не нужные скрипты, и далее уже изменённую передать в WebBrowser.
Ковырянием интернета выяснил, что это можно сделать с помощью Asynchronous Pluggable Protocol. Однако полной информации как это реализовать я не нашёл. Статья (http://www.rsdn.ru/article/inet/pluggprotocol.xml) добавила только дополнительные вопросы. Я понял, что создав наследника от IInternetProtocol и IInternetProtocolRoot, нужно в методе Start самому реализовывать загрузку данных из интернета. Можно ли сделать так, чтобы не реализовывать загрузку самому, а только получить доступ к уже загруженой странице?
Я в COM не сильно разбираюсь, поэтому хотел бы выяснить как этого созданного наследника прикрутить к компоненту WebBrowser? И если в программе например два таких компонента или больше, как тогда реализовывать работу через Asynchronous Pluggable Protocol? И можно ли этот созданный протокол прикрутить к самому IE?
Может у кого есть готовые примеры? Буду благодарен за любую информацию.
 
готовых компонентов, по-моему, нет
если ком сложно, то
можно получать страницу с помощью winhttp,
парсить , удаляя ненужную инфу,
сохранять ее на диск в темповую директорию,
открывать в броузере уже из темповой директории (все относительные урлы надо будет пофиксить)

в аттачменте пример работы с winhttp (создание и выполнение пост/гет запросов)
ну и мусор небольшой...
 

Вложения

Спасибо за ответ. Была такая идея, только через WinInet. Но дело в том, что нужно загружать последовательность страниц, чтобы прослеживался referer. Если есть способ менять у WebBrowser referer (в чем я сомневаюсь), тогда можно реализовывать через WinInet или winhttp.
 
Статус
Закрыто для дальнейших ответов.

Ещё по теме