3

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

ServicePointManager 用于 WebRequest/WebResponse:

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

但是如何将它与 Webbrowser 控件一起使用?

4

2 回答 2

3

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

如果您可以自动执行此操作(我不确定您是否可以),我希望必须参考 COM 版本才能获得完整的 API(请参阅:AxWebBrowser)。WebBrowser 仅公开了完整功能的一个对 .NET 友好的子集 - 足以完成最常见的工作。

另一种选择可能是自己获取数据(WebClient / WebRequest / 等),然后简单地将 html 推送到 WebBrowser - 但这会弄乱外部链接等。

于 2008-10-08T11:10:55.413 回答
0

正如 Marc Gravell 所指出的,我不认为可以在 WebBrowser 控件中使用 ServicePointManager 或 ServicePoint 类,但您也不需要这样做。

请参阅我对您提出原始问题的其他帖子的回答。

于 2008-11-15T13:58:44.170 回答