问题标签 [twebbrowser]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
6 回答
4713 浏览

delphi - Delphi TWebBrowser 内存泄漏

我的应用程序使用加载网页的 TWebBrowser。问题是,关闭包含 TWebBrowser 的表单后,使用的内存没有被释放。如果我打开和关闭表单,内存就会不断增加。

看到一些关于调用 SetProcessWorkingSetSize() 或 CoFreeUnusedLibrariesEx() 来解决这个问题的帖子,但我不确定这些是否是正确的解决方案。

知道如何释放 TWebBrowser 使用的内存吗?

0 投票
2 回答
6204 浏览

delphi - 像 Internet Explorer 一样使用 ctrl+鼠标滚轮时如何使 TWebBrowser 缩放?

根据

http://www.rendelmann.info/blog/CommentView,guid,356fbe68-3ed6-4781-90a4-57070a0141da.aspxhttp://msdn.microsoft.com/en-us/library/aa770056(v=vs. 85).aspx

使用控制键和鼠标滚轮让托管的 WebBrowser 进行缩放应该只需要IWebBrowser2.ExecWB(OLECMDID_OPTICAL_ZOOM, ...)使用 的pvaIn值进行调用100
但是在调用它之后,ctrl+mousewheel 仍然不会缩放内容

我在 Delphi 2007 中使用的代码:

0 投票
1 回答
353 浏览

delphi - 在 DesignMode 中使用 TWebBrowser 有什么方法可以告诉内容发生了变化?

如果将 TWebBrowser 置于 DesignMode (HTMLDocument2.designMode := 'On';) 中,是否有办法在用户键入控件时检测文档的更改,类似于像 TEdit/TMemo 这样的 std ctrls 的 OnChange 事件?

谢谢

0 投票
1 回答
3317 浏览

delphi - 在 TWebBroswer Delphi 7 中填写网页上的字段

我正在制作一个小程序来在我们供应商的网站上下订单。我需要在页面中填写 3 个字段。甚至不需要“提交”它。

是否有任何简单的方法或任何组件可以做到这一点(最好是免费的)

谢谢!

0 投票
1 回答
1485 浏览

delphi - 使用 TEmbeddedWB 或 TWebBrowser 检测外部内容

我试图阻止由 TEmbeddedWB 或 TWebBrowser(或 TCppWebBrowser)加载的任何外部内容。我想阻止从 Internet 加载的任何内容,包括图像、javascript、外部 CSS、外部 [embed] 或 [object] 或 [applet] 或 [frame] 或 [iframe],执行可以加载外部内容的 JavaScript 等。

这个问题由两部分组成:

  • 将网络浏览器设置为“全部限制”(除了没有图像的基本 HTML)并检测是否存在此类内容
  • 如果外部内容不存在,则显示“下载栏”,单击后将网络浏览器置于“全部下载”模式并获取所有内容。

第一项有问题。在 TEmbeddedWB 中,您可以使用 DownloadOptions 开关阻止几乎任何东西,最重要的是 ForceOffline 开关,但即使所有这些都关闭,它仍然会通过一些东西,如[object][iframe]标签。我知道是这种情况,因为我实现了 OnBeforeNavigate2 事件,它触发了这些标签中包含的 URL,并且它还在本地服务器的日志中创建了一个条目。在 TEmbeddedWB 中设置OfflineModeForceOfflineMode对这些项目没有帮助。

那么我怎样才能真正阻止所有呢?因此,它需要从包含脚本和 CSS 在内的被阻止的外部元素的基本 HTML 开始。有没有办法在每次想要下载任何内容时触发事件,以便可以阻止它或通过阻止所有外部下载来避免首先触发此类事件?我需要摆弄 Internet Explorer 区域和安全性吗?任何指向正确方向的指针都会有所帮助。

第二项也很棘手,因为我需要检测是否存在有问题的标签(例如“applet”、“script”、“link”等。这种检测不需要完美,但至少必须足以覆盖大多数这样的标签。我是这样做的:

是否有一种更简单的方法来扫描它,或者唯一的一种是使用类似于上面代码的其他接口函数(例如,等)运行几个Get_applets循环Get_embedsGet_stylesheets到目前为止,我发现我必须调用以下函数来涵盖所有这些:

但是,如果可以更轻松地处理,我宁愿不实现那么多循环。它可以?

0 投票
1 回答
1813 浏览

c# - Delphi/C#:WebBrowser socks5 代理(使用用户名/密码验证)

如何在 WebBrowser (IE 8/9) 中使用带有登录名/密码的 SOCKS 5 代理?

在德尔福我尝试过这样的事情:

但看起来它只有在代理不需要登录/密码身份验证时才有效。

0 投票
3 回答
3780 浏览

delphi - Delphi:如何禁用 TWebBrowser 安全证书警报?

我正在编写一个 Delphi 应用程序,它使用 TWebBrowser 在表单上显示 Google 地图。但是当它开始导航到 HTML 文件时,会多次显示警报(大约 10 次):“ revocation information for the security certificate for this site is not available ...

如何防止 TWebBrowser 这样做?我的意思是禁用安全警告?我必须为 Google 和我的文件添加例外吗?如果是,如何?一些代码会对我有很大帮助。

0 投票
3 回答
2467 浏览

delphi - 是否有技术原因不在 Delphi 中使用 TWebBrowser 来查看 Google 地球?

我确实希望这不会因为主观而被删除。唯一主观的部分可能是 1)我的 Delphi 比我的 PHP 好 2)我更喜欢编译到解释性编程语言。

但是,实际(非主观)问题是 - 如果我选择 Delphi 并使用 TWebBrowser(或类似机制)来查看/操作 Google 地球,我会以任何方式限制我的可用功能吗?

是否有一些我只能“在浏览器中”做而不能“在 VCL 浏览器组件中”做的事情?

[更新] 我忘了说 1)我只对 Windows 感到满意,2)谷歌地球功能只是一个更大的 APP 的一部分(对我来说,将该应用程序实现为 Delphi 程序比浏览器更容易)基于, 但这听起来又是主观的, 这就是为什么我从来没有提到它. 我会坚持“如果我选择 Delphi 并使用 TWebBrowser, 我会以任何方式限制我的可用功能吗?” 作为问题, 因为那可以得到答复。

0 投票
2 回答
1690 浏览

delphi - TWebBrowser 中的 Google 街景

有没有人成功让 StreetView 在 TWebBrowser 控件中显示?

我想以编程方式构建一个 Url 并让它以简单的 Delphi 形式显示。

到目前为止,这是我对该表格的内容:

当表格显示:

  • 如果该位置没有街景信息,我会获得常规地图视图。
  • 如果有街景信息(在另一个浏览器窗口中验证),它只会显示一个灰屏。

我猜 Flash 播放器没有加载。

你们有什么想法吗?

问候,

西蒙

0 投票
1 回答
612 浏览

delphi - 阻止 TWebBrowser 接受丢弃的文件

我有一个接受拖放文件的表单,以及放置在同一表单上的 TPanel 控件上的 TWebBrowser 控件。

主要的是,当我在表单上放置一个文件时,它的路径被添加到 TEdit 控件中。但是,当用户将文件拖放到表单上时,有时他们实际上可能会将其拖放到 TWebBrowser 上,根据文件类型,它可以为用户保存或运行文件。这是我实际上不想发生的事情,我只想让 TWebBrowser 忽略删除的文件或像表单一样处理它。

这是我用来处理 WM_DROPFILES 消息的代码:

先感谢您。任何线索将不胜感激。