Предотвратить зависание Explorer с большими Zip-файлами в Vista

Эта статья была написана Дэниелом Спиваком , отличным разработчиком программного обеспечения и другом TutoryBird.

В Windows Vista встроена обработка zip-файлов – вы можете создавать, извлекать или даже просматривать их, как если бы они были папкой. Но если у вас на жестком диске очень большие zip-файлы, плохие вещи могут произойти, если вы не отключите zip-обработчик.

Как мы это выяснили

Только сегодня я пытался восстановить некоторые из моих файлов из предыдущей резервной копии. Я взял огромный zip-файл с сетевого диска и сохранил его на рабочем столе. Оттуда, немного волшебства WinZip схватило меня, один каталог, 25 МБ, который я действительно хотел из всего 11 ГБ zip-файла. Я знал, что, возможно, захочу восстановить больше файлов позже, поэтому я оставил файл на своем рабочем столе (даже при передаче через гигабит, 11 ГБ по-прежнему 11 ГБ).

Вечером, когда я наконец вернулся к своему рабочему столу, я с ужасом обнаружил, что все не работает должным образом. Например, я открыл файловый менеджер и попытался развернуть папку в панели дерева слева. Вместо того, чтобы приятно расширяться, показывая подпапки, он просто начал вращать колеса. Когда я вернулся к нему через десять минут, он все еще пыхтел.

Я убил процесс explorer.exe, перезапустил проводник и продолжил свой рабочий процесс. По крайней мере, пока у WinZip не возникли проблемы. Я нажал кнопку «Извлечь» в архиве разумного размера (150 МБ), и приложение зависло. Так же, как исследователь, он ел мой полный процессор и ничего не делал с ним.

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

Похоже, что проводник Windows Vista (по умолчанию) пытается перейти в любой zip-архив в прямом подкаталоге, что позволяет пользователям просматривать содержимое zip-файла прямо на боковой панели. В Windows XP была та же «функция», но она ожидала ввода zip-файла, пока вы фактически не развернули узел в боковой панели. В принципе, метод Vista – хорошая идея. XP всегда страдала от длительных задержек, когда вы расширяли ZIP-файл, особенно по сетевому соединению. Захват списка файлов в фоновом режиме кажется хорошей идеей, пока вы не учитываете очень большие архивы.

Пытаясь вписаться в этот 11-гигабайтный zip-файл, сидящий на моем рабочем столе, Vista в значительной степени запустила задачу с интенсивным использованием процессора, которую у нее не было шансов выполнить в разумные сроки. Таким образом, убийство производительности по всем направлениям без ощутимой отдачи.

Отключение обработки почтового индекса

Очевидное решение этой проблемы – просто отключить встроенную обработку файлов zip в Windows, так как я все равно использую WinZip. Самый быстрый способ сделать это – использовать отличное приложение ShellExView для отключения расширения оболочки проводника. (вам не нужно его устанавливать, просто на случай, если вы настороженно относитесь к подобным вещам)

Откройте ShellEx в режиме администратора, щелкнув правой кнопкой мыши файл и выбрав «Запуск от имени администратора». Выберите все «Сжатые» элементы, щелкните правой кнопкой мыши и выберите «Отключить выбранные элементы».

Теперь, когда над расширением позаботились, вы можете либо выйти из системы, либо стать немного умнее и просто перезапустить процесс «explorer.exe». Чтобы сделать это, откройте диспетчер задач (щелкните правой кнопкой мыши на панели задач и выберите «Диспетчер задач», или используйте этот хороший трехпалый нервный зажим Вулкана, Ctrl + Alt + Delete) и найдите процесс «explorer.exe» , Вероятно, в списке будет более одного процесса с именем explorer.exe, поэтому обязательно выполните сортировку по процессору и выберите самый дальний вверх.

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

Теперь выберите «Новая задача (Выполнить…)» в меню «Файл». В текстовом поле «Открыть:» введите «проводник» и нажмите «ОК». Через некоторое время панель задач должна появиться снова, и все должно быть просто. После этого у вас больше не должно быть проблем с большими zip-файлами, блокирующими систему.

Загрузите ShellExView с nirsoft.net

Оцените статью
TutoryBird.Ru
Добавить комментарий