Невозможно открыть IE 10 в 32-битном режиме

6

Мне нужно запустить IE 10 в 32-битном режиме на 64-битной Windows 7 Enterprise N.

Когда я запускаю IE 10 из «C: \ Program Files (x86) \ Internet Explorer», я вижу в диспетчере задач, что у меня есть только один процесс «iexplorer.exe» и нет процесса «iexplorer.exe * 32».

У меня есть приложение с ActiveX, которое поддерживается только в 32-разрядной версии, и приложение не может быть загружено в 64-разрядном режиме.

Есть ли способ заставить IE10 работать в 32-битном режиме?

Керен Хаас
источник

Ответы:

6

Это происходит потому, что для параметра реестра TabProcGrowth задано значение 0, что означает, что вкладки должны запускаться в том же процессе, что и процесс менеджера (64-разрядный), а не открывать новый процесс для каждой вкладки (32-разрядный). Вы можете исправить это, изменив запись реестра здесь:

HKEY_CURRENT_USER \ Программное обеспечение \ Microsoft \ Internet Explorer \ Main \ TabProcGrowth или HKEY_LOCAL_MACHINE \ Software \ Microsoft \ Internet Explorer \ Main \ TabProcGrowth

Установите для него значение больше 0, перезапустите IE, и вы увидите нормальное возобновление поведения (и ваши дополнения должны снова работать). Больше информации в этой статье Microsoft KB .

Хэл Несбитт
источник
Ссылочная статья KB относится только к Windows 8, тогда как OP спрашивает о Windows 7. Я также использую IE10 в 64-битной Windows 7 и не вижу этот раздел реестра по указанному пути.
Индрек
Хотя в статье базы знаний упоминается Windows 8, она относится и к Windows 7. Я использую Win7 64bit, и я только что сделал это. Попробуйте поискать еще раз - TabProcGrowth - это запись DWORD в папке «Main» - я понимаю, что мой путь, приведенный выше, мог создать впечатление, что «TabProcGrowth» - это папка, хотя на самом деле это запись.
Хэл Несбитт
1
Нет, до сих пор не вижу его, ни как ключ (папка), ни значение (запись). IE10 на Windows 7 64-битная. Во всяком случае, не имеет значения, потому что у меня нет проблем с этим. Надеемся, что ОП проверит ваш ответ и проверит, работает ли он для них.
Индрек
2
Спасибо! Это помогло. Я мог найти эту запись реестра только в «Windows 7 Enterprise N», где у меня была проблема. В Windows 7 Enterprise запись реестра вообще не существует, и все работает правильно.
Керен Хаас
6

Вам нужно прочитать статью « Понимание расширенного защищенного режима», чтобы понять модель процессов и разрядность Internet Explorer :

В последних нескольких выпусках Internet Explorer имел многопроцессную архитектуру, в которой процесс « Кадр » или « Менеджер » выполняется со средней целостностью, а процессы « Вкладка » или « Содержимое » выполняются с низкой целостностью (защищенный режим) или Средняя целостность (для зон, где защищенный режим отключен, например для сайтов в интрасети). Все содержимое HTML и элементы управления ActiveX выполняются в процессе содержимого. Даже панели инструментов, которые визуально выглядят так, как будто они находятся в процессе менеджера, действительно работают в процессе контента.

Для IE10 мы изменили IE так, что процессы менеджера всегда выполняются как 64-битные процессы при работе на 64-битном процессоре под управлением 64-битной версии Windows. ... В поддержку этого изменения различные пункты реестра, которые указывают на Internet Explorer, были обновлены и теперь указывают на C: \ Program Files \ Internet Explorer \ iexplore.exe. Если вы вручную вызовете C: \ Program Files (x86) \ Internet Explorer \ iexplore.exe, этот 32-битный процесс просто запустит 64-битную версию iexplore.exe (с соответствующими параметрами командной строки) перед выходом.

В Internet Explorer на рабочем столе по умолчанию процессы содержимого остаются 32-разрядными по умолчанию для совместимости с 32-разрядными элементами управления ActiveX, панелями инструментов, BHO и т. Д. Даже при непосредственном запуске 64-разрядного исполняемого файла iexplore.exe у вас все равно будет 64-разрядный процесс диспетчера. в котором размещаются только 32-битные процессы контента. Если вы хотите включить 64-битные процессы содержимого для рабочего стола, вы должны отметить опцию « Включить расширенный защищенный режим» в разделе «Безопасность» Internet Explorer Tools > Internet Options > Advanced tab. Когда эта опция включена, все процессы содержимого, работающие в защищенном режиме (например, зона Интернета и зона ограниченного доступа, по умолчанию), начнут использовать 64-разрядные процессы содержимого.

В готовящемся Internet Explorer 10 в Windows 7 и Windows Server 2008R2 единственное , что делает включенный расширенный защищенный режим, - это включает 64-битные процессы содержимого.

Поэтому независимо от того, запустить ли я 32 или 64-бит IE10, пока Enhanced Protected Mode является отключена , я могу загрузить 32-разрядные элементы управления ActiveX или Content Процессы просто отлично. Вот что я вижу в диспетчере задач на Win7 x64, когда 32-битный элемент управления ActiveX загружается в 32-битный IE10:

1

Вы должны подтвердить, что Tools / ActiveX Filteringэто не включено, и если это не помогает, проверьте параметры безопасности для вашей текущей зоны.

Каран
источник
«Расширенный защищенный режим» отключен, «Инструменты / Фильтрация ActiveX» не включена, но все же у меня есть только один процесс в диспетчере задач, и ActiveX не загружен. Есть еще идеи?
Керен Хаас
Вы уже пробовали сбросить браузер? Кроме этого, я не знаю, почему 32-разрядный процесс не запускается в вашем случае. Можете ли вы протестировать на другом ПК с Win7 x64 IE10?
Каран
Я пытался перезагрузить браузер много раз. У нас есть две машины с одной и той же проблемой, и одна в порядке, но я не могу найти разницу между ними.
Керен Хаас
1

В предыдущих версиях 64-битной Windows существовали две версии Internet Explorer, которые входили в состав операционной системы. Одной из них была обычная 32-битная версия, а также родная 64-битная версия.

Постоянная проблема с 64-битным Internet Explorer заключается в том, что плагины, разработанные для 32-битной версии, несовместимы с ним, но вы все еще можете использовать его в Windows 8.

Итак, вот как вы это включите:

Откройте Internet Explorer 10 на рабочем столе, нажмите «Настройки» в правом верхнем углу окна, нажмите вкладку «Дополнительно», прокрутите вниз, пока не увидите «Включить расширенный защищенный режим» *, и отметьте поле рядом с ним, нажмите «ОК», перезапустите Internet Explorer. ,

Скриншот

источник: http://mingersoft.com/blog/2012/09/switch-between-32-bit-and-64-bit-internet-explorer-10-in-windows-8/

AndreaCi
источник
1
Уже попробовал, и это не помогло. Согласно этому посту, флажок не должен быть установлен, если мне нужно 32-битный. Более того, это относится к Windows 8, а не к 7.
Керен Хаас