使用ServicePointManager和Webbrowser控件是否可能?

3

我希望能够禁用一个HTTPS网站登录页面弹出的“不受信任证书”警告窗口,涉及到IT技术。

可以使用ServicePointManager来处理WebRequest/WebResponse:

> public static bool
> ValidateServerCertificate(object
> sender, X509Certificate certificate,
> X509Chain chain, SslPolicyErrors
> sslPolicyErrors) {
>     return true; }
> 
> ServicePointManager.ServerCertificateValidationCallback
> = new RemoteCertificateValidationCallback(ValidateServerCertificate);
但是我如何在Webbrowser控件中使用它?

我想知道你是否可以调整注册表来更改默认行为,以使您的网络浏览器在同一台机器上使用的WebBrowser控件也能起作用。 - PerlDev
2个回答

3
ServicePointManager是针对托管代码的;WebBrowser是shdocvw的一个包装器,因此几乎肯定具有非常不同的编程模型。如果您可以自动化这个过程(我不确定您是否可以),则需要引用COM版本来获取完整的API(参见:AxWebBrowser)。WebBrowser仅公开.NET友好的子集功能-足以完成大多数常见工作。另一种选择可能是自己获取数据(WebClient / WebRequest /等),然后将HTML推送到WebBrowser中-但这将破坏外部链接等。

0
正如Marc Gravell所指出的那样,我认为在WebBrowser控件中无法使用ServicePointManager或ServicePoint类,但您也不需要使用它们。
请参阅我对您在另一篇帖子中提出的原始问题的答案。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接