Подтвердить что ты не робот

Как вставить объект браузера, отличный от IE <n>, в приложении Delphi

Использование TWebBrowser по умолчанию упрощает встраивание веб-браузера. К сожалению, тот, который входит по умолчанию, - IE <n> .

Мне интересно, как интегрировать Gecko или WebKit.

  • Есть ли там примеры VCL?
  • Если нет, как бы это сделать?
  • Где лучше всего найти ядро ​​для Gecko и/или WebKit в встраиваемом формате?
4b9b3361

Ответ 2

Жизнеспособной альтернативой является CEF - Chromium Embedded Framework, которая инкапсулирует браузер Chromium, который сам по себе инкапсулирует WebKit. Эта библиотека предоставляется в виде простых библиотек DLL с экспортированным C API.

Там интерфейс delphi доступен в code.google.com/p/delphichromiumembedded

Я использую его с моей собственной реализацией интерфейса и прекрасно работаю, но не так просто правильно использовать как THTML или IE, но отлично подходит для тех, кому нужен мощный и встраиваемый браузер.

Ответ 3

Изменить: Ларс избил меня, к сожалению

Хорошо есть элемент управления ActiveX, основанный на движке Gecko, который пытается представить точную копию API IWebBrowser (который использует TWebBrowser).

Вы можете найти его здесь: http://www.iol.ie/~locka/mozilla/control.htm К сожалению, похоже, что он не обновлялся некоторое время. Последняя версия основана на Gecko 1.7.12, и я считаю, что Gecko в настоящий момент до 1.9.x(используется в Firefox 3)

Ответ 4

Альтернативой является компонент THTMLViewer. Я использовал это в течение нескольких лет.

Теперь это доступно бесплатно. веб-сайт здесь http://pbear.com/htmlviewers.html. Согласно веб-сайту songbeamer (http://www.songbeamer.com/delphi/), доступна версия Delphi 2009.

Ответ 5

За последние три года я столкнулся очень мало с тем, чтобы внедрить Gecko в Delphi. Одна из библиотек, появившаяся довольно поздно в игре (для меня), была проект GeckoSDK на SourceForge. Я много работал на ранних этапах, пытаясь сделать правильно встроенный Gecko в Delphi. Наша первая попытка создания внутреннего браузера с поддержкой Gecko была построена с использованием Delphi и Gecko 1.8. С тех пор мы перешли, и наш браузер теперь является XULRunne r application. У меня есть фрагменты кода, лежащие на моем жестком диске, но с той ранней попытки, которую я еще не удалил.

Когда Mozilla выпускает Gecko 2.0, я думаю, что в Delphi станет намного проще встраиваться. Объектная система XPCOM в Gecko делает ее очень сложной для внедрения, поскольку большинство из них возвращает NS_RESULT. Струны особенно тяжело.

edit: Я просто просматривал свои старые закладки (почти все из них мертвы) и искал новый URL-адрес для браузера японского "бублика" на основе Gecko и нашел его здесь,

http://github.com/plus7/bagel/tree/master/Legacy.

Это, вероятно, лучший выбор для отличного кода для начала. К сожалению, комментарии в коде японцы, и автор не ответил на вопросы.