Почему DEP убивает IE при доступе к Microsoft FTP?
Я запускаю IE (9.0.8112.16421) с about:blank
и я иду на ftp://ftp.microsoft.com/
Я нажимаю Alt, нажимаю View и затем открываю FTP-сайт в Windows Explorer. В этот момент IE перестает отвечать и в конечном итоге вылетает (хотя иногда это окно все еще активно), и я получаю обычное диалоговое окно Windows, в котором говорится, что программа перестала работать.
В этом диалоговом окне я нажимаю на опцию, чтобы попытаться найти решение проблемы, и индикатор выполнения просто продолжает прокручиваться, не давая мне никакой страницы результатов, поэтому я должен прервать работу, нажав Отмена.
Затем я получаю всплывающее сообщение типа "пузырь" из системного трея, в котором говорится, что DEP остановил выполнение программы.
Что дает? Почему DEP (часть Microsoft Windows) препятствует IE (продукту Microsoft) совершать совершенно законные действия с собственного FTP-сайта Microsoft?
ОС Windows Vista HP SP2, шведский язык.
Скриншоты следующим образом...
Обновление: Обычно UAC отключен, но я обнаружил, что его включение влияет на IE, когда я выбираю FTP в меню "Вид", как я и подозревал.
Я в основном пытался запустить IE в его 32-разрядной и 64-разрядной версиях с надстройками и без них, включить и отключить UAC, а затем попытаться перейти к просмотру и параметру FTP (как показано выше). Вот результаты.
С выключенным UAC и включенным DEP
Action: IE 32-bit, normal start, go to ftp://ftp.microsoft.com/, view menu, FTP option.
Result: crash
Action: IE 32-bit, extoff, go to ftp://ftp.microsoft.com/, view menu, FTP option.
Result: crash
Action: IE 64-bit, normal start, go to ftp://ftp.microsoft.com/, view menu, FTP option.
Result: information & warning message
Action: IE 64-bit, extoff, go to ftp://ftp.microsoft.com/, view menu, FTP option.
Result: information & warning message
Это информационное и предупреждающее сообщение, которое я получаю, если использую 64-разрядную версию IE:
Первое сообщение является предупреждением FTP-прокси. В нем говорится, что папка ftp://ftp.microsoft.com/ будет защищена от записи, поскольку прокси-сервер не настроен на полный доступ. Далее говорится, что если я хочу переместить, вставить, изменить имя или удалить файлы, я должен использовать прокси другого типа, и что мне следует связаться с системным администратором для получения дополнительной информации (обычная рекомендация, когда они понятия не имеют, что происходит на).
Какого черта это все? Я даже не использую прокси-сервер, как вы можете видеть на следующем снимке экрана (Свойства обозревателя, Соединения, диалог настроек локальной сети).
В этом втором сообщении только говорится, что FTP-сайт нельзя просмотреть в (Windows) Explorer.
Когда UAC выключен, я всегда получаю эти два сообщения при запуске 64-разрядной версии IE.
С включенным UAC и DEP
Action: IE 32-bit, normal start, go to ftp://ftp.microsoft.com/, view menu, FTP option.
Result: crash
Action: IE 32-bit, extoff, go to ftp://ftp.microsoft.com/, view menu, FTP option.
Result: security warning message, prompts to allow action
Action: IE 64-bit, normal start, go to ftp://ftp.microsoft.com/, view menu, FTP option.
Result: security warning message, prompts to allow action
Action: IE 64-bit, extoff, go to ftp://ftp.microsoft.com/, view menu, FTP option.
Result: security warning message, prompts to allow action
Как вы можете видеть из этого списка, если я включил UAC, я фактически избавляюсь от этих сообщений, и открытие FTP-сайта в Windows Explorer (из IE) действительно работает (за исключением 32-битной версии, которая все еще вылетает).
Вот предупреждение о безопасности:
Тот факт, что 32-разрядный IE все еще дает сбой, может указывать на то, что это как-то связано с одной или несколькими надстройками в этой битовой версии IE. 32-битный IE не падает, если он запускается с флагом extoff.
Если это влияет только на 32-разрядный IE, то это нормально, что 64-разрядный IE не имеет этой проблемы, потому что он не будет использовать какие-либо надстройки, используемые 32-разрядной версией, они не совместимы с 64-разрядным (хотя некоторые надстройки работают как с 32-разрядным, так и с 64-разрядным IE).
Выяснение, какое дополнение (если оно есть) вызывает эту проблему, - это совершенно новый вопрос... но мне кажется, что сейчас я ближе к ответу и возможному решению.
Конечно, я мог бы просто добавить IE (32-разрядный) в список исключений DEP. Фактически, я уже проверил это, и это заставляет IE выполнять эту задачу без сбоев. Но я не хочу отключать DEP или принудительно устанавливать его для всех программ и служб Windows (кроме тех, которые строго указаны в списке исключений). (Другими словами, DEP не может быть полностью отключен, вы можете переключаться только между двумя режимами работы.)
Обновление 2: это интересно...
Я запускаю 32-битный IE, захожу на ftp://ftp.microsoft.com/ и нажимаю на View, и открываю FTP-сайт в Windows Explorer. Результатом является крах!!
Затем я запускаю 32-битный IE с флагом extoff, чтобы отключить надстройки, захожу на ftp://ftp.microsoft.com/ и нажимаю на "Просмотр", и открываю FTP-сайт в проводнике Windows. Я получаю предупреждение о безопасности, как и ожидалось, с включенным UAC, и оно открывается в проводнике Windows.
Теперь... я закрываю Windows Explorer, и я закрываю IE. Затем я запускаю 32-разрядный IE (обычный запуск, с надстройками), захожу на ftp://ftp.microsoft.com/ и нажимаю на "Просмотр" и открываю FTP-сайт в проводнике Windows. Теперь на этот раз он не падает! Вместо этого я получаю скриншот № 5, как показано выше. Это предупреждение FTP прокси. Теперь получите это... если я нажму кнопку закрытия, чтобы избавиться от этого сообщения, произойдет следующее: Firefox запустится и перейдет по ftp://ftp.microsoft.com/
Тот факт, что это работает с 32-разрядным IE (с надстройками) во второй раз, заключается в том, что я все еще вошел в систему как анонимный для FTP-сервера. Время входа еще не истекло. Стандартное время ожидания входа для FTP-серверов обычно составляет от 60 до 120 секунд. Я вошел в него, когда я впервые запустил 32-битный IE с флагом extoff (без надстроек), который фактически работает и подключается с помощью проводника Windows.
Обновление 3: время ожидания соединения с FTP-сервером истекло. Так что теперь, если я запускаю 32-битный IE (с надстройками) и повторяю шаги, как прежде, чем он вылетает, как и ожидалось...
В заключение:
Если я уже был подключен к FTP-серверу через Windows Explorer, и я перехожу на этот FTP-адрес в 32-битном IE, и я выбираю параметр FTP в меню просмотра, чтобы открыть его в Windows Explorer, он дает мне прокси-сервер FTP предупреждение, а затем открывает адрес в веб-браузере по умолчанию (Firefox в моем случае).
Если я ранее не был подключен к FTP-серверу через Проводник Windows, и я захожу на этот FTP-адрес в 32-разрядной версии IE и выбираю параметр FTP в верхнем меню, откройте его в Проводнике Windows, а затем происходит сбой IE!
Это просто здорово...
Не то чтобы я беспокоился об использовании Internet Explorer или Windows Explorer для входа на FTP-серверы. Это просто показывает, почему IE не лучший выбор для браузера.
Это напоминает мне о времени, когда Microsoft предписывала использовать Internet Explorer в качестве браузера по умолчанию для открытия веб-ссылок и других веб-ресурсов, несмотря на тот факт, что пользователь установил в системе альтернативный браузер.
Даже если пользователь явно установит браузер по умолчанию на что-то другое, а не Internet Explorer в настройках Windows, IE по-прежнему будет иногда появляться, в зависимости от того, к каким веб-ресурсам пользователь пытался получить доступ. Настройка браузера по умолчанию не имела никакого эффекта. Было жестко закодировано, что IE является предпочтительным браузером, особенно при доступе к продуктам Microsoft или страницам помощи. Веб-страница на самом деле говорит, что вы не используете IE, и что вы должны открыть его в IE, чтобы просмотреть его. К сожалению, вы не сможете открыть его вручную в другом браузере, просто скопировав и вставив URL-адрес из адресной строки, поскольку он будет отображать другой URL-адрес, а исходный URL-адрес будет перенаправлять на "вы используете неправильный браузер ", чтобы у вас не было времени нарезать его в буфер обмена.
К счастью, эти дни прошли. В настоящее время Microsoft вынуждена распространять бесплатные версии Windows для IE и WMP для рынка ЕС. Так и должно быть! Эти программы должны быть необязательными, а не обязательными.
2 ответа
Когда вы выбираете эту опцию в Internet Explorer, Windows Explorer запускается из песочницы, в которой находится Internet Explorer. Обычно это вызывает следующее предупреждение:
Я не знаю, почему именно DEP решает остановить процесс, но я бы попытался получить доступ к серверу напрямую из Windows Explorer, чтобы избежать всей этой путаницы.
Если вы хотите получить более подробную информацию, я бы порекомендовал слоняться с Process Monitor и проверять, что на самом деле происходит, когда IE зависает.
Это может быть какой-то плагин к IE, а не сам IE. Проверьте, какие плагины (скорее всего, панель инструментов какого-либо поставщика), отключите его и посмотрите, все ли еще появляется сообщение об ошибке.
Если вы удалите все плагины, но проблема все еще возникает, IE, скорее всего, поврежден, и вам следует либо восстановить данные из резервной копии, либо переустановить Windows.