IE «Расширенный защищенный режим (122)»: что означает «122»? - PullRequest
0 голосов
/ 17 октября 2018

Я разрабатываю объект Browser Helper Object (BHO) для Internet Explorer, написанный на C #.Я использую событие BeforeNavigate, чтобы получить вызываемый URL и сохранить его в локальной переменной.Для каждой вкладки создается новый экземпляр BHO.Это означает, что каждая вкладка имеет свой собственный BHO, который, в свою очередь, имеет свои локальные переменные.Я проверил это, отображая MessageBox с предыдущим вызванным URL-адресом (значением локальной переменной), прежде чем он будет перезаписан новым URL-адресом.

string myUrl = "";

void BeforeNavigate( string URL, ... )
{
    System.Windows.Forms.MessageBox.Show( myUrl );
    myUrl = URL.ToString();
}

Но в некоторых случаях локальная переменная пуста, хотяURL был вызван раньше.Я исследовал настройки IE и выяснил, что это вызвано защитой IE от повышения уровня зоны.Для зон локальной интрасети и доверенных сайтов защищенный режим отключен, в то время как он включен для зон Интернета и сайтов с ограниченным доступом.

Например, когда вызывается intranet.com, а затем - internet.com на той же вкладке, я быожидать, что MessageBox отображает intranet.com при вызове internet.com.Но вместо этого отображается пустая строка.Я предполагаю, что вызов internet.com активирует защищенный режим для этой вкладки, который порождает новый экземпляр BHO.MessageBox теперь будет отображать значение переменной нового экземпляра BHO.Значение переменной старого BHO теряется.

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

Эту проблему я уже описывал в На данный момент функция защиты от повышения уровня зоны IE мешает BHO .

Когда я включаю EPM (расширенный защищенный режим), возникает та же проблема, даже если защищенный режим включен во всех зонах.Странно также, если я явно удаляю проверенные URL из зон local intranet и trusted sites.(Обратите внимание, что «защищенный режим» и «расширенный защищенный режим» различаются.)

В контекстном меню веб-сайта пункт меню properties предоставляет информацию о режиме, в котором выполняется веб-сайт.Для веб-сайтов в Интернете отображается режим Internet | Protected Mode: Enhanced, указывающий, что этот веб-сайт выполняется в EPM.

Я обнаружил, что веб-сайты, принадлежащие интрасети, выполняются в «специальном» EPM.Для веб-сайта интрасети отображается режим Local Intranet | Protected Mode: Enhanced (122).После того, как я удалил протестированные URL-адреса из зон, отображается Internet | Protected Mode: Enhanced (122).Я пытался выяснить, что означает 122, но не смог найти никакой полезной информации.Кажется, что вызов веб-сайта Internet | Protected Mode: Enhanced (122), а затем веб-сайта Internet | Protected Mode: Enhanced в той же вкладке вызывает пересечение границы, что приводит к той же проблеме.

Может ли кто-нибудь предоставить информацию о значении 122?

Любая помощь будет оценена, спасибо!

1 Ответ

0 голосов
/ 19 октября 2018

На мой взгляд, это просто внутренний серийный номер.

Дополнительные сведения о расширенном защищенном режиме см. В следующих статьях блога Internet Explorer:

Улучшенный защищенный режим

Общие сведения о расширенном защищенном режиме

...