问题标签 [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 投票
1 回答
855 浏览

delphi - 文档完成后如何更改 adsense 代码 TWebbrowser 对象

文档完成后如何更改 adsense 代码 TWebbrowser 对象

我尝试更改 div innerhtml,但我看不到 adsense 商业广告如何做到这一点

我的代码块

0 投票
1 回答
1592 浏览

delphi - Delphi TWebBrowser 不响应单击文件超链接

我有 TWebBrowser 组件(Delphi 7),我从内存流中加载了 HTML。页面的 HTML 代码加载正常,页面显示正确。但是,当我尝试单击任何带有地址(href 属性值)的超链接时,例如“file:///C:/dir/page.html”,什么都没有发生。没有错误消息,浏览器也不会尝试转到另一个页面。URL 是 100% 正确的 - 当我将相同的网页加载到相同的 TWebBrowser 实例,但从硬盘驱动器上的文件,而不是从内存流中,这个链接工作正常。有什么想法可能是错的吗?


我试图执行以下语句:

,但它们没有改变任何东西(它们被正确执行,没有错误,即 HRESULT = S_OK 一直)。我必须说该组件实际上是 TEmbeddedWB(它具有 SecurityManager 属性),尽管 TWebBrowser 的行为方式相同 - 我只是重新检查了它。

我考虑使用临时目录中的文件。


感谢大家,我终于通过使用临时目录中的文件解决了这个问题。

0 投票
2 回答
3233 浏览

delphi - 一种将按键从 TWebBrowser 重定向到 ParentForm 的方法

第一个问题。如果需要,请帮助格式化它。

上下文
我在主窗体中有一个 TWebBrowser,它的行为就像打印机一样。
因此,当用户在真实打印机中执行一些命令时,我在其中加载了一些 HTML 文本……
我希望用户能够单击并从 WebBrowser 中选择文本。

问题
当用户在 WebBrowser 中单击时,从操作中注册的某些快捷方式不再起作用。例如,有一个带有快捷方式的操作F7。如果用户在 WebBrowser 中单击并按 F7,它不会调用我的快捷方式。
我知道这是 WebBrowser 的设计。

所以,我想:我想将每个组合键发送回表单。
问题是:如何?
如果它是另一个控件,我可以perform(WM_KeyDown,...)OnKeyDown事件中使用 a。

替代方案或建议也将不胜感激。这两天我很累,所以我可能会错过一些东西。

0 投票
1 回答
1643 浏览

delphi - 指定代理时 TWebbrowser 不工作

在 Windows XP 中,我编辑了 Internet 选项并设置了代理详细信息,我打开 IE8 - 然后它会询问代理用户名/密码,然后它就可以正常工作了。

然后我用 TWebbrowser 打开我的应用程序,但是所有 url 都将无法加载,它只是出现了一个默认的 windows 页面,说页面无法加载。

你需要做一些特别的事情来使 TWebbrowser 与代理一起工作吗?

德尔福 XE

0 投票
2 回答
1015 浏览

windows - 在 TWebbrowser 中单击声音

从这个答案 CoInternetIsFeatureEnabled in Delphi2010

有谁知道如何停止点击声音。当我将它放到一个单独的 pas 文件中时,这似乎在 Delphi XE 中不起作用。有一些缺失。以及它无法编译的其他原因,所以我有点卡住了。

这就是我所做的。

0 投票
3 回答
1890 浏览

delphi - 尝试访问 TWebbrowsers HTML 时应用程序锁定

编辑 将其缩小到这一行,

这会消耗时间...如何加快速度?

使用以下代码,我的应用程序在尝试访问页面的 HTML (Delphi XE) 时可能会挂起 1-2 秒。

但是我注意到在我的 GetHTML 方法中可能需要 1-2 秒才能返回某些内容,并且它会锁定 UI。用 Delphi XE 查看 AQTime,它说方法调用很慢(1-2 秒)。它是零星的,我想知道当页面仍在加载中时它是否会失败。

我正在加载的页面是一个内部页面,充满了 javascript 和 500k 大,我不能使用 OnDocumentComplete 因为它在页面准备好之前触发,即使我对 ReadyState 进行检查,它仍然会提前触发。

任何人都可以阐明,如果他们有更快的方式我可以访问 TWebbrowser 的 HTML?

0 投票
4 回答
4926 浏览

delphi - 如何释放 IHTMLDocument 使用的内存?

使用 IHTMLDocument (IHTMLDocument2) 后有没有办法释放内存?

目前我正在使用EmptyWorkingSet函数,但我觉得这不是一个好方法

即使释放 TWebBrowser 也无济于事;问题似乎出在未从内存中释放的 IHTMLDocument COM 类中。有没有明确的方法来释放它;类似Marshal.ReleaseComObject但可用于 Delphi 的东西?

与运行 JavaScript 相比,它是可重现的,内存损失更少,但仍然如此。如果您在表单顶部放置两个按钮并尝试以下代码...

每次释放 WebBrowser 后,您都会看到内存丢失。当我运行我的 JavaSrcipt 时,它甚至超过 300 kB,大约是 1 MB,如果我运行这么多次,这可能会导致内存泄漏。

非常感谢

0 投票
1 回答
1791 浏览

delphi - 没有父窗口的 TWebBrowser

我正在尝试在控制台/服务类型的应用程序中使用 TWebBrowser(没有任何窗口)。Navigate 肯定在做某事,但它从不调用 onDocumentComplete。有没有其他方法可以访问某些 URL 的 IHTMLDocument2?

谢谢你。

0 投票
2 回答
6709 浏览

twebbrowser - 运行时的 TWebBrowser 和 FEATURE_BROWSER_EMULATION

有没有人尝试在运行时创建和销毁 TWebBrowser 并使用 FEATURE_BROWSER_EMULATION 在重新创建 TWebBrowser 以启用切换模式而不重新启动应用程序之前切换浏览器模式?

我想知道该设置是否仅在启动应用程序时读取,或者在创建 Web 浏览器控件时读取。

0 投票
1 回答
4492 浏览

delphi - 也在 TWebBrowser 中打开新页面

我创建了一个包含 twebBrowser 的应用程序。问题是当我点击某个链接时,比如 gmail,它会在我的默认浏览器(即 IE)的新窗口中打开。我如何使它像 firefox 或 chrome 等一样工作,在他们的窗口中打开点击的链接。url 应该在 TWebBrowser 的窗口中打开。我必须在运行时创建一个带有 TWebBrowser 的新表单吗?不需要这样的代码,想法就行

提前致谢。

PS 我的组织阻止了 Gmail、Facebook 等,但是通过我的 TWebBrowser,我可以打开它们。我的 QA ppl 可以在他们的日志中看到吗?我的猜测是否定的,从那时起他们会阻止它。您对此有何评论