【问题标题】:Delphi : how to disable TWebBrowser security certificate alert?Delphi:如何禁用 TWebBrowser 安全证书警报?
【发布时间】:2012-06-08 11:30:24
【问题描述】:

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

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

【问题讨论】:

    标签: delphi twebbrowser


    【解决方案1】:

    原来 TWebBrowser 组件有一个名为“Silent”的属性,当设置为“true”时,会阻止此类对话框。

    【讨论】:

      【解决方案2】:

      这里有一个快速的 sn-p 来帮忙。将 Silent 设置为 true,这将阻止浏览器窗口显示任何对话框。这会做你想做的,但如果有任何问题,它们将不会显示,因为任何窗口显示被禁用。

      procedure TForm1.FormShow(Sender: TObject);
      var
        WebAddress : string;
      begin
        WebAddress := 'https://www.google.com/maps/place/Orlando,+FL/@28.4810971,-81.5088354';
        WebBrowser1.Silent := true;
        WebBrowser1.navigate(webaddress);
      end;
      

      如果您不介意要访问的地址,请查看安全警告?

      【讨论】:

        【解决方案3】:

        在控制面板 --> Internet 设置 --> 高级选项卡中取消选中“检查服务器证书吊销”和“检查发布者证书吊销”设置

        【讨论】:

        • 修复证书而不是关闭警告不是更好吗?
        • 修复证书比较好,但是既然问题是...禁用安全警告...
        • @Hendra 但是,delphi 标签表明问题是如何以编程方式执行此操作。
        • 这个答案涉及用户禁用整个系统的安全检查。如果这真的是唯一的方法,那就这样吧,但你应该明确这是唯一的方法。否则,更精细的方法会更好,例如检测和消除一个重要的特定程序的错误。不过,修复证书似乎是使错误消失的另一种方法。或者可能是警报是真的,而解决方案仅仅在于(以某种方式)提供撤销信息?这个答案似乎是万不得已的解决方案。
        • 同意。不,我的回答不是唯一的方法。我之前的回答只是对这个问题的快速回应。问题可能是客户端计算机无法访问证书颁发机构服务器的结果,即防火墙/代理设置或 CA 服务器只是关闭(希望是暂时的),或者 Google 地图服务器有问题。从应用程序的角度来看,最好是捕获错误,显示自定义消息错误来说明问题,并为用户提供处理它的选项。
        猜你喜欢
        • 1970-01-01
        • 2010-09-15
        • 2010-12-03
        • 1970-01-01
        • 2013-03-04
        • 2015-03-22
        • 1970-01-01
        • 1970-01-01
        • 2020-10-29
        相关资源
        最近更新 更多