IE защищенный режим для локальной системной учетной записи - PullRequest
5 голосов
/ 30 августа 2011

У меня есть служба Windows, которая запускает агент Team City Build в ОС Windows 7.

Этот агент запускает тесты NUnit, которые используют веб-драйверы Selenium IE для выполнения серии тестов.

Чтобы веб-драйверы Selenium IE работали, защищенный режим для всех зон должен иметь одинаковое значение (либо защищенный режим включен, либо выключен).

Проблема в том, что настройки по умолчанию для учетной записи локальной системы недействительны (некоторые зоны работают в защищенном режиме, другие - нет).

Может кто-нибудь сказать мне, как изменить настройки защищенного режима для всех пользователей или для учетной записи локальной системной учетной записи?

Ответы [ 4 ]

10 голосов
/ 22 октября 2011

Вот решение (и я был в каждом уголке Интернета, чтобы получить это):

Запустите RegEdit и перейдите к этому ключу:

HKEY_USERS\S-1-5-18\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones

На моей машине (Windows 7) учетная запись локальной системы S-1-5-18. Это может быть одинаковым для всех версий Windows, но я не знаю об этом.

В этом разделе реестра есть еще пять ключей 1, 2, 3, 4 и 5, каждый из которых представляет Зону.

Для каждой зоны, если есть значение DWORD с именем «2500», установите его значение равным 0, чтобы отключить защищенный режим. Обратите внимание, что вам не нужно добавлять его, если его там нет.

Предполагается, что значение «2500» будет контролировать флажок «Включить защищенный режим».

ОБНОВЛЕНИЕ (от пользователя anon):

Графический способ сделать то же самое - убедиться, что служба «Interactive Services Detection» (UI0Detect) работает (обратите внимание, что Windows 8/2012 и более поздние версии требуют правильного задания ключа реестра HKLM\SYSTEM\CurrentControlSet\Control\Windows\NoInteractiveServices для всплывающего окна). появиться) заполучить psexec и запустить

psexec -si 0 "C:\Program Files\Internet Explorer\iexplore.exe"

Во всплывающем окне нажмите «Просмотреть сообщение», затем после переключения экрана в Internet Explorer выберите «Сервис» -> «Свойства обозревателя» | Безопасность и проверьте уровень безопасности для каждой зоны.

Счастливого тестирования пользовательского интерфейса!

0 голосов
/ 28 апреля 2015

Лучшее описание решения это https://stackoverflow.com/a/30242504/1371989

0 голосов
/ 23 августа 2012

В IE WebDriver есть настройка, которая предписывает игнорировать настройки защищенного режима.Судя по названию настройки, это может привести к некоторой «нестабильности», но у меня не было проблем с этим подходом:

var options = new InternetExplorerOptions();
// avoid the "Protected Mode must be set to the same value (enabled or disabled) for all zones" error
options.IntroduceInstabilityByIgnoringProtectedModeSettings = true;
return new InternetExplorerDriver(options);
0 голосов
/ 30 августа 2011

Вы можете попробовать отключить UAC, что также отключит защищенный режим для всех пользователей системы ..

...