标签: twebbrowser

我如何在TWebBrowser中以HTML格式显示rss feed的输出?

我想在TWebBrowser组件中以格式化的HTML显示rss Feed的输出,如果在TWebbrowser中加载http://code.google.com/feeds/p/v8/svnchanges/basic,则显示content作为XML文件

在此输入图像描述

但如果我使用IE加载相同的页面

在此输入图像描述

我尝试在加载的IHTMLDocument2中注入一个css,正如在这个问题CSS和TWebbrowser delphi中提出的那样,但我仍然得到相同的结果.

问题是,如何在TWebbrowser中加载rss feed但是将输出显示为像IE这样的HTML文档呢?

html css delphi twebbrowser delphi-xe2

8
推荐指数
1
解决办法
1470
查看次数

用Delphi中的帖子打开默认浏览器

我知道在delphi中你可以打开默认浏览器:

ShellExecute(self.WindowHandle,'open','www.website.com',nil,nil, SW_SHOWNORMAL);
Run Code Online (Sandbox Code Playgroud)

但是我想知道是否有办法在新打开的浏览器窗口上自动发布数据或自动填充登录数据(即使在firefox,safari等)

谢谢

-Brad

delphi delphi-7 delphi-2009 twebbrowser

7
推荐指数
1
解决办法
6623
查看次数

如何在不可见时强制加载Twebbrowser控件中的页面

我需要从delphi代码执行一些javascript函数,但如果页面未在Twebbrowser控件中加载,则此函数将失败.所以问题是如果页面位于一个未激活的tabhet中,则在标签页变为活动状态之前不会加载页面.

问题是如何在Twebbrowser不可见的情况下强制加载控件中的页面.

测试这个行为只是在第二个标签页中放置一个pagecontrol,带有2个tabheet和一个twebbrowser,现在在表单的oncreate事件中放入此代码

WebBrowser1.Navigate('http://stackoverflow.com');
Run Code Online (Sandbox Code Playgroud)

现在,当您运行应用程序时,页面仅在您显示第二个标签页时加载.

提前致谢.

delphi twebbrowser

7
推荐指数
1
解决办法
2884
查看次数

TWebBrowser仅在Delphi中控制性能下降

有人可以解释一下为什么TWebBrowser控件在包括XE5和可能的XE6在内的所有XE版本的Delphi上都运行得如此之慢?要测试这个,你需要创建一个新的Delphi项目并将TWebBrowser控件放入其中.在表单显示事件中,导航到此网站:

http://ie.microsoft.com/testdrive/Performance/setImmediateSorting/Default.html

请在Windows 7或更高版本上测试.导航完成后,运行setImmediate test并观察结果.完成测试需要花费大量时间.完成此操作大约需要一分钟.

当你打开真正的Internet Explorer浏览器并做同样的事情 - 测试将立即完成(约200毫秒).

一些额外的奇怪信息:

当您在旧版本的Delphi(准确地说是Delphi 7)上重新创建此过程时,Web控件的工作速度应尽可能快,并且测试立即完成.但是HTML5速度测试仍然会很慢(本页的替代测试).

另一个奇怪的事情是,在C++ Builder中可以看到相同的缓慢行为,但在Visual Studio产品中却看不到.微软是否故意放慢Embarcadero产品中的TWebBorwser?我不能相信这一点.

我试图用不同的方法克服这个问题,例如:

  1. 在注册表中尝试不同的功能选项,例如:FEATURE_GPU_RENDERING,FEATURE_BROWSER_EMULATION(11001),FEATURE_ALIGNED_TIMERS(未记录的选项),FEATURE_ALLOW_HIGHFREQ_TIMER(未记录的选项),

  2. 设置timerBeginPeriod(1) - 没有效果.

如果有人知道如何解决这个问题,请与我分享这些信息.

UPDATE1 如果有人关心,我制作了独立的测试应用程序.它可以在这里下载:http://mp.org.pl/download/ietest.zip它包含带有htm文件的源和exe应用程序.HTM文件包含一些js过程,它在独立IE中比在TWebBrowser控件中快10倍.它使用setImmediate作为测试(与上述测试中使用的相同的过程).但是以这种方式测试会更容易.

delphi performance twebbrowser

7
推荐指数
1
解决办法
1779
查看次数

如何避免嵌入式iframe元素的OnDocumentComplete事件?

我希望每次都能阻止iframe元素触发OnDocumentComplete事件.例如,一个页面有4个iframe,当我加载此页面时,我的OnDocumentComplete事件运行了4次.我想OnDocumentComplete为每一页只运行一次.我怎样才能做到这一点?

也许我可以删除或封锁iframesTWebBrowser控制.

delphi iframe delphi-7 twebbrowser

6
推荐指数
1
解决办法
2365
查看次数

如何通过<select>下拉列表中的"value"属性选择<option>项?

在我的Delphi应用程序中,我正在使用一个TWebBrowser控件,我在其中加载了一个HTML文档,其中包含一个<select>元素(下拉列表)和一些<option>项目(下拉列表项).假设我在网络浏览器中加载了以下HTML文档:

<html>
<body>
  <select id="ComboBox">
    <option value="firstvalue">First Value</option>
    <option value="secondvalue">Second Value</option>
    <option value="thirdvalue">Third Value</option>
  </select>  
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

我怎样才能以编程方式选择,例如<option>,其value属性是thirdvalue?或者换句话说,当我只知道该项的value属性是thirdvalue什么时,我如何以编程方式选择此下拉列表中的第三项?

delphi dom twebbrowser

6
推荐指数
1
解决办法
6649
查看次数

如何保存TWebBrowser的内容,包括用户输入的表单值?

是否可以将Webbrowser(在Delphi中)中加载的整个文档保存为具有新值的普通HTML文件(我的意思是用户在html的表单中输入的值这个文档)?我需要这个,以便在下次使用应用程序时读取包含所有值的HTML文档.

forms delphi save twebbrowser

6
推荐指数
1
解决办法
4609
查看次数

使用嵌入式WebBrowser控件时如何绕过Internet Explorer增强的安全性?

我有一个嵌入的本地Windows应用程序WebBrowser,即

  • CLSID_WebBrowser
  • 8856F961-340A-11D0-A96B-00C04FD705A2
  • Shell.Explorer.2

不幸的是,当在Windows Server上运行时,Internet Explorer增强的安全模式会干扰WebBrowser控件,从而使其根本无法呈现:

在此处输入图片说明

在这种情况下,软件的UI作为WebBrowser控件驱动-使该软件不可用。

我可以禁用Internet Explorer增强安全模式,但这不切实际。

我如何指示Internet Explorer浏览器允许在没有安全对话框的情况下渲染嵌入式浏览器?

注意:我建议添加about:security_Application.exe到“ 受信任的区域”列表中”

在此处输入图片说明

可悲的是,这将需要DRP / FRP验证,ISO安全评估,并且必须召集安全组进行更改。此外,将需要创建RFC,以便毕马威(KPMG)不会进行下次审核。我希望获得“好的”解决方案。

也可以看看

webbrowser-control iwebbrowser2 twebbrowser

6
推荐指数
1
解决办法
2248
查看次数

delphi webbrowser:如何防止或隐藏那个javascript错误?

我正在运行TEmbeddedwb,我在导航TEmbeddedwb时遇到了javascript超时错误.

(在我的Internet Explorer中运行时没有出现此错误!)

在此输入图像描述

浏览器询问我是否要停止执行脚本.

我把TEmbeddedwb属性放到了

silent = true

dialogoBox.disableAll = true

但我仍然有这个弹出窗口!

1)为什么我在Internet Explorer上导航时没有错误时出现此错误(在2pcs上测试)

2)如何禁用/隐藏此弹出窗口?

问候

    unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, OleCtrls, SHDocVw_EWB, EwbCore, EmbeddedWB;

type
  TForm1 = class(TForm)
    iemain: TEmbeddedWB;
    procedure iemainScriptError(Sender: TObject; ErrorLine, ErrorCharacter,
      ErrorCode, ErrorMessage, ErrorUrl: String;
      var ScriptErrorAction: TScriptErrorAction);
    procedure FormCreate(Sender: TObject);
  private
    { Déclarations privées }
  public
    { Déclarations publiques }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.iemainScriptError(Sender: TObject; ErrorLine,
  ErrorCharacter, ErrorCode, ErrorMessage, ErrorUrl: …
Run Code Online (Sandbox Code Playgroud)

browser delphi webbrowser-control twebbrowser

6
推荐指数
1
解决办法
5919
查看次数

检测TWebBrowser文档中的活动元素何时更改

是否有任何可以挂钩的事件来检测网页上的活动元素何时发生变化?例如,当用户聚焦编辑框时.

我知道我可以检查计时器中的活动元素,但如果可能的话我宁愿避免这种情况.

delphi twebbrowser delphi-xe6

6
推荐指数
1
解决办法
1403
查看次数