2008-10-08 7 views
3

Je veux désactiver la "fenêtre d'alerte" que je reçois de la page de connexion d'un site HTTPS avec "certificat non approuvé".Est-il possible d'utiliser ServicePointManager avec le contrôle Webbrowser?

ServicePointManager est utilisé pour WebRequest/WebResponse:

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

mais comment puis-je utiliser avec contrôle WebBrowser?

+0

Je me demande si vous pouvez modifier le registre pour modifier le comportement par défaut de votre navigateur Web, ce qui devrait également fonctionner pour votre contrôle WebBrowser utilisé sur la même machine – PerlDev

Répondre

3

Le ServicePointManager est pour le code managé; WebBrowser est un wrapper autour de shdocvw, donc aura certainement un modèle de programmation très différent.

si vous pouvez automatiser ce (et je ne suis pas sûr que vous pouvez), j'attendre d'avoir à faire référence à la version COM pour obtenir l'API complète (voir: AxWebBrowser). WebBrowser expose uniquement un sous-ensemble compatible avec .NET de la fonctionnalité complète - assez pour effectuer les tâches les plus courantes.

Une autre option pourrait être d'obtenir les données vous-même (WebClient/WebRequest/etc), et il suffit d'appuyer que HTML dans le navigateur Web - mais cela gâchera liens externes etc.

0

Comme l'a souligné Marc Gravell, Je ne crois pas qu'il soit possible d'utiliser des classes ServicePointManager ou ServicePoint dans le contrôle WebBrowser, et vous n'avez pas besoin de le faire.

Voir ma réponse à votre autre message où vous avez posé votre question initiale.

Questions connexes