С# или C++ надстройка над стандартным контролом We

Александр16 лет в сервисе
Данные заказчика будут вам доступны после подачи заявки
04.02.2013

Нужно создать надстройку над стандартным контролом WebBrowser. Данная надстройка должна позволять (в рамках одного процесса) иметь отдельные куки, кеш и прокси браузера (вернее будет сказать устанавливать прокси), а также задавать путь к хранению куков и кеша. То есть если мы одновременно запускаем несколько процессов с таким контролом, то все они имеют отдельные кеш, куки и прокси, а также дополнительные настройки браузера (описанные ниже), не пересекающиеся друг с другом (сами). При этом надстройка сохраняет все возможности и функционал объекта WebBrowser

Контрол должен поддерживать работу с проксями типов http (обязательно) и socks (желательно). Также должны поддерживаться прокси с авторизацией.

Дополнительные Настройки Браузера (для каждого экземпляра могут задаваться отдельно).

1. Путь к кукам и кэшу (для хранения временных файлов в созданной вами папке (желательно, в папке с программой)

2. Таймаут прогрузки страницы - время, отведенное для дозагрузки web-страницы, иногда требуется для прогрузки некоторых элементов (например капчи).

3. Отключение системного отладчика JS скриптов - на некоторых web-страницах Java скрипты выполняются с ошибками, которые отлавливаются самой системой. Чтобы они не появлялись, включите эту настройку.

4. Загрузка изображений

5. Загрузка видео

6. Загрузка звуков

7. Включение и выключение скриптов

8. Включение Javascript

9. Использование кеша

10. Запуск activeX

11. Загрузка activeX

12. Загрузка фреймов

13. Загрузка popup

14. Установка UserAgent

Оптимизация работы компонента браузера.

Суть того что нужно: Я использую компонент браузера для многопоточного серфинга по большому количеству страниц 10000-100000. Соответственно, браузер должен быть как можно менее ресурсоемким и работать на всем множестве страниц без сбоев.

Некоторые наработки для решения вышеприведенных задач уже имеются, исполнителю их предоставлю.

Для работоспособности вашего функционала будет 3 теста:

1. Запускаю 2 экземпляра вашего приложения (получается 2 процесса). В каждом создан контрол на базе вашей надстройки. Для обоих устанавливаю разные пути к кукам и кешу и разные прокси (естественно, функции установки делаете вы). Затем сначала в одном приложении захожу в свой гугл аккаунт №1. Затем (не выходя из аккаунта в первом) захожу в другом приложении в гугл аккаунт №2. Затем в каждом аккаунте отдельно серфю по почте GMAIL. Таким образом если кеш, куки и прокси не пересекаются у моих 2 процессов, то я спокойно смогу серфить по аккаунтам как в 2 разных браузерах.

2. Аналогичный тест провожу на примере Вконтакте.

3. Запускаю несколько 10-15 экземпляров приложения для серфинга 100000 страниц через разные прокси по какому либо популярному сайту (вроде википедии).