Ошибка 0xc0000005 при запуске приложения в Windows 7/10 – как устранить?

0
17467

Установка накопительных обновлений, время от времени выпускаемых Microsoft, является залогом стабильности и безопасности работы системы, но иногда такие пакеты обновлений сами становятся причиной неполадок в Windows. Примером тому может служить ошибка 0xc0000005, возникающая при запуске приложений в Windows 7, 8.1 и 10. Появляющееся же при этом диалоговое окошко не предлагает ничего иного, как закрыть сбойную программу.

Окно с ошибкой 0xc0000005

Формулировка содержимого окошка может быть разным: ошибка при инициализации приложения, ошибка при запуске приложения, Error: access violation. При попытке открыть игру пользователь может получать ошибку вида unmanaged exception 0xc0000005 или unhandled exception access violation c0000005. Иногда при запуске приложения падает вся система, но сути это не меняет, так как во всех случаях в описании присутствует код 0xC0000005.

К сожалению, у этой ошибки нет подробного описания, которое могло бы точно указать на причину её появления, но чаще всего она связана с неправильной работой «сырых» обновлений, приводящих к сбоям в обращении к памяти. В Windows 7 и 8.1 появление ошибки с указанным кодом регистрировалось после установки обновления KB2859537, а также KB2872339, KB2882822 и KB971033, KB2876315 и KB2862772. Все эти пакеты в процессе установки заменяют файлы ядра, что и приводит к описанным выше последствиям. Соответственно, решением проблемы может стать удаление этих обновлений.

Удаление обновлений через интерфейс

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

Удаление проблемных пакетов обновлений через Панель управления

Чтобы система не установила его повторно, автоматическое обновление лучше всего отключить, а установку обновлений в будущем контролировать вручную.

Удаление пакетов через командную строку

Удалить «плохое» обновление можно через командную строку, используя консольную утилиту wusa. Запустите консоль CMD от имени администратора и выполните в ней команду вида wusa.exe /uninstall /kb№_пакета. Например, в случае с обновлением KB2859537 команда будет выглядеть следующим образом:

wusa.exe /uninstall /kb:KB2859537

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

Удаление обновлений с помощью утилиты wusa

После этого перезагружаем систему и переводим установку обновлений в ручной режим (это можно сделать и до удаления пакетов). Может статься, что утилита wusa.exe, как и все приложения, при запуске также будет выдавать ошибку 0xC0000005. В этом случае повторите все действия, но уже в безопасном режиме.

Откат к предыдущей точке восстановления

В ряде случаев восстановить нормальную работу системы позволяет обычный откат к предыдущей системной точке восстановления. Запустите командой rstrui инструмент восстановления и проследуйте указаниям мастера.

Восстановление системы с помощью Мастера - шаг 1

Восстановление системы с помощью Мастера - шаг 2

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

Восстановление системы с установочного диска

Окно выбора действия

Дополнительные параметры

Переход к восстановлению из контрольных точек

В крайнем случае с её же помощью можно откатиться к более ранней версии Windows, если до этого выполнялось мажорное обновление.

С помощью утилиты DISM

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

Определяем букву системного диска

Вероятнее всего, в загрузочной среде системный раздел у вас будет иметь букву D. Теперь выполните в консоли такую команду:

DISM /Image:D: /Get-Packages

Выводим список пакетов с помощью утилиты DISM

При этом вы получите список разных пакетов. Найдите в нём пакет, содержащий в названии KB2859537 или другой (в нашем примере это KB4022405), выделите мышкой и скопируйте его полное имя в буфер обмена как показано на скриншоте.

Копируем название пакета

Теперь выполните в консоли такую команду, подставив на место FullName ранее скопированное полное имя пакета:

DISM /Image:D: /Remove-Package /PackageName:FullName

Удаление пакета

В случае удачного выполнения команды само обновление будет удалено, но запись в журнале останется, что, однако, никак не будет влиять на работу программ и системы.

Отключение функции DEP

Функция DEP является частью безопасности системы, обеспечивающей дополнительную защиту от вирусов, но в редких случаях при запуске приложений она может показывать окошко с кодом ошибки 0xc0000005. Попробуйте отключить её, выполнив в запущенной с повышенными правами консоли CMD команду bcdedit.exe /set {current} nx AlwaysOff. После этого перезагрузите ПК и проверьте, не исчезла ли ошибка 0xc0000005.

Отключаем функцию DEP через командную строку

Функцию DEP можно отключить и для определённых программ. Для этого зайдите в «Дополнительные параметры системы».

Переходим в Дополнительные параметры системы

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

Отключаем DEP для отдельных программ

Полностью отключается DEP командой bcdedit.exe /set {current} nx OptIn.

Устранение ошибки 0xc0000005 в Windows 10

А вот с «десяткой» всё обстоит несколько иначе. Вероятность, что причиной ошибки с кодом исключения 0xc0000005 стало какое-то некачественное обновление остаётся, но чаще всего её вызывает конфликт системы с некоторыми видами программного обеспечения. Как правило, это различные криптографические приложения, в частности программные продукты КриптоПРО. Удалите с компьютера данное ПО, после чего тщательно очистите реестр вручную или с помощью утилит типа Wise Registry Cleaner.

Что еще следует проверить в Windows 10

Привести к ошибке может конфликт антивирусных приложений. Если у вас установлено две антивирусных программы, отключите защиту в реальном времени сначала для одного антивируса, а затем для второго и посмотрите, как на это отреагирует система. Удалите один из антивирусов или замените его другим (вообще устанавливать на ПК два антивируса не рекомендуется). В целом мы рассмотрели, как исправить ошибку 0xc0000005 в Windows 7/10, но есть еще пара нюансов, о которых не помешает знать.

Используйте по возможности лицензионные дистрибутивы Windows, ведь согласно статистке, чаще всего с ошибкой 0xc0000005 приходится сталкиваться тем людям, которые устанавливают «левые» сборки и применяют к ним различные активаторы. Если вы до этого обновляли драйвера, особенно драйвер видеокарты, попробуйте откатиться к предыдущим версиям. Ну и, поскольку ошибка связана с взаимодействием приложений с памятью, не будет лишним протестировать ОЗУ вашего компьютера встроенной системной утилитой или сторонней программкой Memtest.

Автор статьи
Андрей Хамлюк
Эксперт по ремонту и настройке ПК с более чем 5-летним опытом работы. Имеет профильное образование по специальности оператор ЭВМ.
Задать вопрос

ОСТАВЬТЕ ОТВЕТ