是否可以将ServicePointManager与Webbrowser控件一起使用?

时间:2008-10-08 09:07:21

标签: c# browser certificate

我想禁用“警报窗口”,我从一个HTTPS站点的登录页面获取“不受信任的证书”。

ServicePointManager用于WebRequest / WebResponse:

> public static bool
> ValidateServerCertificate(object
> sender, X509Certificate certificate,
> X509Chain chain, SslPolicyErrors
> sslPolicyErrors) {
>     return true; }
> 
> ServicePointManager.ServerCertificateValidationCallback
> = new RemoteCertificateValidationCallback(ValidateServerCertificate);

但如何在Web浏览器控件中使用它?

2 个答案:

答案 0 :(得分:3)

ServicePointManager用于托管代码; WebBrowser是shdocvw的包装器,所以几乎肯定会有一个非常不同的编程模型。

如果你可以自动执行此操作(我不确定你可以),我希望必须引用COM版本才能获得完整的API(参见:AxWebBrowser)。 WebBrowser只公开完整功能的.NET友好子集 - 足以完成最常见的工作。

另一个选择可能是自己获取数据(WebClient / WebRequest / etc),只需将该html推送到WebBrowser中 - 但这会弄乱外部链接等。

答案 1 :(得分:0)

正如Marc Gravell所说,我不相信可以在WebBrowser控件中使用ServicePointManager或ServicePoint类,但您也不需要。

在您提出原始问题时,请查看您对其他帖子的回答。