2009-05-12 11 views
4

Je suis en train de gérer un service Windows qui génère par programme des objets HttpWebRequest et HttpWebResponse pour récupérer le message de réponse de la requête.Détection de la version d'IE installée sur votre système d'exploitation en C#?

La propriété UserAgent de HttpWebRequest a été codée en dur pour utiliser IE 6 comme agent de navigateur. Est-ce un moyen de détecter par programme quelle version d'IE est installée sur le serveur hébergeant le service?

Il est actuellement hébergé sur une machine Windows Server 2003 et peut être installé sur une machine Windows Server 2008.

+0

duplication possible de [Détecter la version d'IE à partir d'une application WinForms] (http://stackoverflow.com/questions/6294809/detect-ie-version-from-a-winforms-application) –

+0

@RowlandShaw effectivement cette question est spécifique à WinForms. Il ressemble plus à un duplicata de http://stackoverflow.com/questions/3553984/how-do-i-detect-which-version-of-internet-explorer-is-installé. Cependant, cette question est plus ancienne que les deux, donc techniquement, ce sont les doublons :) –

Répondre

2

vous pouvez extraire également du contrôle WebBrowser lui-même, si vous avez créé un:

WebBrowser browser = new WebBrowser(); 
Version ver = browser.Version; 

Attention: ceci doit être appelé de thread STA, sinon il renvoie une exception. Cela peut être rencontré dans le code de nettoyage MSTest, qui est MTA, pas STA.

+0

On dirait que c'est trop pour ajouter une référence à WinForms juste pour ça. Voir les réponses liées pour de meilleures alternatives. –

Questions connexes