Я занимаюсь разработкой приложения .NET 2.0 WinForms. Ранее он включал стандартный элемент управления Microsoft ActiveX WebBrowser, но я изучаю альтернативы.
Что мне нужно сделать:
Использование веб-браузера в качестве стандартного элемента управления веб-браузера в приложении
Иметь возможность использовать его также в фоновом режиме - например, создать элемент управления, визуализировать веб-страницу и вывести результат в изображение (используя .DrawToBitmap), при этом элемент управления никогда не будет прикреплен к форме.
Подключайтесь к различным событиям в жизненном цикле - в основном DocumentCompleted.
Веб-страницы могут загружаться (или перезагружаться) каждые 30 секунд или около того, либо через новый экземпляр элемента управления, либо с использованием существующего элемента управления. Приложение может оставаться запущенным в течение длительного и неопределенного периода времени.
Должен работать с .NET 2.0. Нет 3.0+ или WPF вещи.
Только три элемента управления, которые я смог найти до сих пор, имеют довольно важные проблемы, которые мешают мне двигаться вперед:
Microsoft ActiveX WebBrowser - имеет огромную утечку памяти, что делает его непригодным для работы в течение длительных периодов времени.
WebKit.NET - Насколько мне удалось установить, его необходимо прикрепить к форме перед выполнением любого рендеринга, что делает ее бесполезной для создания миниатюр. Также, похоже, страдает от утечек памяти.
GeckoFX - лучше всего работает для меня, но не поддерживает многопоточность (что очень важно для части создания миниатюр).
Есть ли другие альтернативы?