Определить, какая версия IE установлена ​​на вашей ОС в C #? - PullRequest
4 голосов
/ 12 мая 2009

В настоящее время я управляю службой Windows, которая программно генерирует объекты HttpWebRequest и HttpWebResponse для получения ответного сообщения запроса.

Свойство UserAgent HttpWebRequest было жестко запрограммировано для использования IE 6 в качестве агента браузера. Есть ли способ программно определить, какая версия IE установлена ​​на сервере, на котором размещается служба?

В настоящее время он находится на компьютере с Windows Server 2003 и может быть установлен на компьютере с Windows Server 2008.

Ответы [ 2 ]

2 голосов
/ 08 июня 2009

вы также можете извлечь его из самого элемента управления WebBrowser, если вы его создали:

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

Предупреждение: это должно вызываться из потока STA, в противном случае выдается исключение. Это можно встретить в коде очистки MSTest, который является MTA, а не STA.

0 голосов
/ 12 мая 2009

Похоже, что пользовательский агент может быть установлен: http://msdn.microsoft.com/en-us/library/system.net.httpwebrequest.useragent.aspx

Я предпочитаю класс WebClient в наши дни, это оболочка для HttpWebRequest и позволяет вам делать некоторые вещи с меньшим количеством кода: http://msdn.microsoft.com/en-us/library/system.net.webclient.aspx

...