36

使用默认的 TWebBrowser 可以轻松嵌入 Web 浏览器。不幸的是,默认情况下出现的是 IE<n>。

我想知道如何集成 Gecko 或 WebKit 之一。

  1. 某处有 VCL 示例吗?
  2. 如果没有,人们将如何去做呢?
  3. 以可嵌入格式查找 Gecko 和/或 WebKit 核心的最佳位置在哪里?
4

5 回答 5

21

TWebBrowserIE。它不是浏览器的可插入结构。您可以将其他浏览器集成到您的应用程序中。看

时间已经过去了

这个答案是从 08 年开始的,从那时起时间已经过去了。这些链接不再起作用,现在可能有更好的选择。

于 2008-10-02T14:54:52.307 回答
16

一个可行的替代方案是CEF - Chromium Embedded Framework,它封装了 Chromium 浏览器,而 Chromium 浏览器本身封装了 WebKit。该库作为带有导出 C API 的普通 DLL 提供。

code.google.com/p/delphichromiumembedded上有一个 delphi 接口

我一直将它与我自己的接口实现一起使用,并且效果很好,虽然不像 THTML 或 IE 那样容易正确使用,但对于需要强大且可嵌入的浏览器的人来说非常有用。

于 2010-03-16T17:26:26.073 回答
3

编辑:不幸的是,拉斯打败了我

好吧,有一个基于 Gecko 引擎的 ActiveX 控件,它试图呈现 IWebBrowser API(TWebBrowser 使用的)的精确副本。

你可以在这里找到它:http: //www.iol.ie/~locka/mozilla/control.htm 不幸的是,它看起来好像有一段时间没有更新了。最后一个版本基于 Gecko 1.7.12,我相信 Gecko 目前最高到 1.9.x(用于 Firefox 3)

于 2008-10-02T14:58:54.293 回答
3

另一种方法是 THTMLViewer 组件。我已经用了几年了。

现在可以免费使用。该网站在这里http://pbear.com/htmlviewers.html。根据 songbeamer 网站 ( http://www.songbeamer.com/delphi/ ),有一个 Delphi 2009 版本可用。

于 2008-10-02T15:01:08.750 回答
2

在过去的三年中,我很少遇到将 Gecko 嵌入到 Delphi 中的方式。一个在游戏中(对我来说)出现得相当晚的库是SourceForge 上的 GeckoSDK 项目。为了让嵌入式 Gecko 在 Delphi 中正常工作,我做了很多工作。我们第一次尝试基于 Gecko 渲染引擎的内部“浏览器”是使用 Delphi 和 Gecko 1.8 构建的。从那以后,我们继续前进,我们的浏览器现在是一个XULRunne r 应用程序。我的硬盘驱动器上还有一些我尚未删除的早期尝试的代码。

当 Mozilla 发布 Gecko 2.0 时,我认为它会更容易嵌入到 Delphi 中。Gecko 中的 XPCOM 对象系统很难嵌入,因为大多数东西都返回 NS_RESULT。尤其是弦乐很硬。

编辑:我刚刚浏览了我的旧书签(几乎所有书签都已失效)并搜索了基于 Gecko 的日语“百吉饼”浏览器的新网址,并在这里找到了它,

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

这可能是您开始编写一些优秀代码的最佳选择。不幸的是,代码中的注释是日文的,作者从未回答过问题。

于 2008-10-02T16:19:33.570 回答