Перестали працювати програми після поновлення. Помилка після інсталяції оновлення. У чому причина

Перестали працювати програми після поновлення. Помилка після інсталяції оновлення. У чому причина

У недавньому минулому, зокрема влітку-восени 2013 року, багато користувачів Windows 7 зіткнулися з неприємністю - після установки стандартних оновлень системи переставали запускатися програми. Проблема торкнулася не всіх версій Windows 7, а лише 64-розрядних та тих, які були… піратськими копіями. Що сталося?

А відбулося таке: ряд оновлень, а саме KB2859537, KB2872339 та KB2882822, призначених для виправлення критичних уразливостей ядра Windows 7, у процесі установки замінили частину системних файлівна нові. У тому числі ядро ​​- файл ntoskrnl.exe. Деякі піратські копії Windows 7 зберігають «активацію» тільки за рахунок наявності старої версії ntoskrnl.exe, який не повинен змінюватися ні за яких умов — інакше «активація» злетить. Програма злому перейменовує старий ntoskrnl.exe на xNtKrnl.exe і в налаштуваннях запуску системи передає керування йому. Тобто після такої «активації» Windows 7 функціонує з двома ядрами, з яких задіяно лише одне — xNtKrnl.exe.

Це зроблено для того, щоб Windows 7 могла працювати з драйвером емулятора таблиці SLIC - особливої ​​області BIOS комп'ютера, де містяться відомості про ліцензування системи та ряд програм. Емулятор замість цієї SLIC-таблиці «підсовує» системі фальшиву, до якої відомості про ліцензію вже внесені.

Якщо не зрозуміло, як це пов'язано з оновленнями, пояснюємо. Замінені файли підсистеми WOW64 (32-розрядна частина Windows) не підтримуються старою версієюядра, тому при спробах запуску 32-розрядних програм виникає характерна помилка 0xc0000005.


Сама система та 64-бітові програми продовжують працювати як раніше.

Хронологія появи помилки 0xc0000005

Вперше помилка 0xc0000005 стала виникати після встановлення оновлення KB2859537, випущеного в серпні 2013. Це оновлення шляхом заміни системних файлів закриває 4 вразливості Windows 7, які використовувалися шкідливими програмами для отримання підвищених привілеїв та виконання в режимі ядра.

Наступного разу користувачі піраток зіткнулися з цією помилкою у вересні того ж року після випуску оновлення KB2872339. Воно також виправляє радий критичних помилок ядра шляхом заміни файлів, і користувачі, кому вдалося відновити роботу системи після KB2859537, були змушені шукати рішення.

Втретє помилка 0xc0000005 спіткала багатостраждальні піратки в жовтні 2013 року. функціональні можливості, і знову - заміною системних файлів на нові.

Коли чекати на наступний «сюрприз» від Microsoft — невідомо. Але чи варто звинувачувати корпорацію у навмисних диверсіях проти користувачів? Зрозуміло, що ні. Оновлення, що принесли стільки бід, не були націлені на боротьбу з піратством — вони просто не тестувалися на зламаних системах.

Як виправити помилку 0xc0000005 після інсталяції оновлення?

Оскільки основна працездатність Windows 7 у разі помилки 0xc0000005 не порушується, виправити ситуацію можна кількома способами:

  • за допомогою "Відновлення системи";
  • шляхом деінсталяції оновлення через «Програми та компоненти»;
  • видаленням за допомогою Wusa.exe - установника системних оновлень;
  • видалення за допомогою утиліти Dism.exe.

А щоб виключити повторну появу помилки 0xc0000005, потрібно зробити так, щоб вищезазначені оновлення KB2859537, KB2872339 та KB2882822 більше не встановлювалися. Звичайно, якщо ви готові миритися з незакритими вразливістю ядра Windows 7 — «діркою» у системі захисту».

Відновлення системи

  • Запустити «Відновлення» можна через Пуск – Програми – Стандартні – Службові

або за допомогою програми "Виконати": натисніть R+Windows на клавіатурі, введіть команду rstruiі натисніть кнопку ОК.


  • Після запуску «Відновлення» виберіть відповідну контрольну точку — вона повинна бути створена до дати встановлення проблемного оновлення та першої появи помилки 0xc0000005. Якщо остання збережена точка не торкається цих змін, позначте пункт «Вибрати іншу точку» та клацніть «Далі».


  • Перед кожною створює контрольну точку. У нашому прикладі є кілька точок, створених установником системних модулів — серед них є та, яка нам потрібна. Вибираємо найбільш підходящу за датою.


  • Далі підтверджуємо вибір і чекаємо на закінчення відновлення. Якщо все пройде як треба, помилка 0xc0000005 більше за нас не потурбує.

Відновлення системи у Віндовс 7 можна запускати з нормального та безпечного режимів, а також із середовища відновлення. Останній варіант дуже рятує, якщо крім згаданої помилки є ще й проблеми із завантаженням.

Деінсталяція оновлень через «Програми та компоненти»

  • Запустіть панель керування та відкрийте «Програми та компоненти».



  • Виберіть зі списку вищезазначене джерело проблем (у цьому прикладі це оновлення KB2882822) і натисніть «Видалити».


  • Перезавантажте комп'ютер. У такий же спосіб видаліть два інші оновлення, про які ми говорили.

Видалення проблемних оновлень за допомогою консольних утиліт

Наступні способи також успішно допомагають впоратися з помилкою 0xc0000005, причому другий навіть тоді, коли Віндовс не завантажується.

Видалення за допомогою інсталятора оновлень Windows

  • Відкрийте командну консоль: впишіть у пошуковий рядок Пуска команду cmd. Клацніть правою кнопкоюмиші за однойменною програмою зі списку знайдених файлів та виберіть "Запуск від адміністратора".

  • Виконайте команду: wusa.exe /uninstall /kb:1234567, де замість 1234567 повинен бути вказаний номер оновлення, наприклад, «kb:2882822».


  • Після перезавантаження комп'ютера перевірте, чи допомогло видалення впоратися з помилкою 0xc0000005 під час запуску програм. Якщо її більше немає, проблему можна вважати вирішеною.

Видалення за допомогою утиліти DISM

  • Якщо ви працюєте в середовищі відновлення, команда пишеться трохи інакше: DISM /Image:З: /Get-Packages, де С: - Літера розділу вінчестера, куди встановлена ​​Windows 7.


  • Повернемося до DISM. Команда, яку ми виконали, виведе у вікно консолі перелік встановлених оновлень. Їхні імена досить довгі, але в них завжди є згадка про конкретний номер пакету — KB з цифрами. У цьому списку потрібно знайти пакет, який ви збираєтеся видалити, та скопіювати його ім'я. Копіювання виконується клацанням правої кнопки миші. Для виділення тексту консолі потрібно клацнути всередині вікна правою кнопкою і вибрати команду «Позначити».


  • Після цього пишемо команду видалення: DISM/Online/Remove-Package/PackageName:і слідом без пропуску вставляємо ім'я скопійованого пакета. Повинно вийти приблизно так само, як на скріншоті.
  • У середовищі відновлення замість « /Onlineпотрібно писати /Image:С:«. Після цих дій помилка 0xc0000005 має бути усунена.

Як уникнути повторення проблеми

Щоб оновлення, які викликали проблему, більше не з'являлися на комп'ютері, ви можете заборонити їх встановлення. Цілком вимикати функцію автоматичного оновлення для цього не доведеться.

  • Відкрийте Windows 7.


  • Натисніть кнопку «Перевірка оновлень».


  • Клацніть на списку знайдених доступних оновлень.


  • Клацніть правою кнопкою по тому, яке не потрібно встановлювати, та виберіть з меню команду «Приховати оновлення».


Після цього проблемні пакети не встановлюватимуться, і помилка 0xc0000005 більше не повториться.

Як виправити помилку автоматичного переходу на літній час (KB2570791)

Ще одна помилка, що стосується оновлень Windows, пов'язана з автоматичним переведенням системного годинника на літній час. Оскільки питання переведення годинника в Росії зараз не актуальне, щоб час не збивалися, найзручніше цю функцію відключити. Якщо вона досі працює, це означає, що у вас не встановлено пакет оновлень KB2570791.

KB2570791 вимикає автоперехід на літній час. Щоб перевірити, чи є помилка у вашій системі, клацніть по годиннику в системному треї і клацніть «Зміна налаштувань дати та часу».

Після цього завітайте у налаштування часового поясу. Якщо ви бачите фразу про те, що перекладу на літній час не очікується, все нормально – пакет KB2570791 у вас вже стоїть.

Якщо замість цього ви бачите опцію «Включити автоперехід на літній час…», значить оновлення KB2570791 у вас немає. Щоб виправити ситуацію, завантажте його зі сторінки Microsoft для вашої версії системи та встановіть. Після перезапуску комп'ютера помилка KB2570791 буде усунена.

Помилка "0xc0000005"є дуже поширеною. Живе вона стільки ж років, скільки живе операційна система Windows. Виявляється вона, як правило, під час запуску програмного забезпечення. Може виникати у разі адаптації зарубіжної програми під користування російськими людьми. Якщо адаптація не була успішною - при виведенні повідомлення, що складається з кирилиці, може з'явитися напис "Помилка 0xc0000005".

Як така, помилка полягає у неправильному зверненні до пам'яті. Причиною появи помилки може стати помилка у реєстрі, вірусна програма, а також за наявності помилок у деяких драйверах.

Якщо проблема виникла при зверненні до будь-якої програми, закрийте програму і спробуйте запустити її знову. Щоб уникнути виникнення цієї проблеми, варто встановлювати на систему останню версію Service Pack.

Якщо ж «0xc0000005» проявляється в драйверах — зробіть відкат драйверів або встановіть старішу їх версію, яка гарантовано працюватиме з вашою системою.

Варто наголосити, що помилка є швидше неприємною, ніж критичною. Хоча, звичайно, рішення відповідного вимагає, оскільки може постраждати зручність користування комп'ютером.

Оновлення: 08.09.2014

З 14.08.2013 спостерігається сплеск помилки 0xc0000005. Причина оновлення Windows 7 kb2859537 від 14.08.2013.

Вирішення проблеми після оновлення варіант №1:

Заходимо Панель Управління -> Програми та Компоненти -> і вручну видаляємо останні оновлення безпеки Windowsі вся проблема вирішена

Вирішення проблеми після оновлення варіант №2:

Натискаємо Пуск-> у рядок пошуку вставляємо цей текст wusa.exe /uninstall /kb:2859537 та натискаємо Enter і видаляємо це оновлення.

Виправлення помилки 0xc0000005 у Windows 8:

Все частіше сучасні користувачістикаються з помилкою 0xc0000005. Ця помилка зустрічається після встановлення оновлення KB2859537, призначеного для усунення вразливих місць Windows 8. Після встановлення цього оновлення змінюється більшість системних файлів та файли ядра.

Щоб усунути помилку вам слід:

Як же видалити оновлення KB2859537?

  • Вам необхідно запустити командний рядок комбінацією клавіш Win + X ® Командний рядок.
  • Далі в командному рядку введіть наступне: exe /uninstall /kb:2859537
  • Також ви можете видалити оновлення через Панель керування® Програми та компоненти® Видалити оновлення.

Оновлення, які Microsoft випускає для Windows 7, покликані підвищувати стабільність і безпеку системи, щоразу роблячи її все більш надійною та відмовостійкою. Але так лише в ідеалі, насправді іноді встановлення чергового оновлення призводить до краху: або перестає запускатися сама система, або програмне забезпеченнявідмовляється нормально працювати. Однак провини Microsoft найчастіше в цьому немає. подібних проблемстраждають переважно піратські складання.

Не дуже давно, після випуску оновлення KB2859537 у серпні 2013 року, протягом кількох місяців користувачі нелегальних копій Windows 7 x64 масово зверталися до фахівців та писали на форуми з проханнями допомогти відновити нормальний запуск системи та роботу додатків. Справа в тому, що це оновлення, так само як і випущені за ним KB2872339 і KB2882822, закриває кілька серйозних вразливостей в ядрі Windows і замінює цілий пакет системних файлів на їх виправлені копії. Після цього "піратки" з модифікованим ядром починали "вилітати" з помилкою 0xc0000005, а користувачі не знали, як із цим боротися.

Інцидент хоч і наробив багато галасу, але мало кого спонукав відмовитись від неліцензійного ПЗ. Тому зараз розбиратимемося, як відновити запуск Windows 7 після встановлення збійного оновлення.

Відновлення запуску власними засобами Windows 7

Вхід у середу відновлення

Оскільки помилка поновлення викликала збій завантаження, ми будемо шукати альтернативні варіантидоступу до системи. У Windows 7 можна використовувати середовище відновлення, вхід до якого відкривається з меню додаткових способівзавантаження. Після того, як комп'ютер увімкнеться, кілька разів швидко натисніть клавішу F8. У списку виберіть «Усунення несправностей комп'ютера».


Завантажившись у середовище відновлення, спочатку виберіть мову введення тексту.


Потім виберіть зі списку обліковий запискористувача, який має права адміністратора, і введіть пароль.


Відкат на контрольну точку

  • Щоб скасувати зміни після встановлення збійного оновлення, виберіть зі списку параметрів пункт 2 — «Відновлення системи».


  • Після запуску засобу відновлення системних файлів та параметрів натисніть "Далі".


  • Виберіть зі списку контрольних точок ту, яка була створена до збою, а потім ще раз натисніть «Далі».


  • Підтвердіть свої наміри та запустіть процес відкату клацанням по кнопці «Готово».


Після завершення процедури перезавантажте комп'ютер. Якщо помилка зникне, вам вдалося вирішити проблему. Однак часто цей спосіб не допомагає. Буває, у системі немає жодної збереженої контрольної точки або ця функція взагалі вимкнена. Тоді доведеться йти іншими шляхами.

Деінсталяція збійного оновлення

Ця процедура дещо складніша за попередню і передбачає вміння працювати з командним рядком. Також бажано, щоб користувач знав номер пакета оновлення (kb_і_цифри), що викликало проблему.

  • Запустіть командний рядок у середовищі відновлення (останній пункт у списку параметрів).


  • Насамперед потрібно дізнатися, яка буква тут призначена диску з Windows 7. Один із способів — скористатися консольною утилітою DiskPart. Запустіть її у командному рядку.
  • Далі виконайте команду list diskдля перегляду фізичних жорстких дисківкомп'ютера. У прикладі він один, тобто система розташована на диску 0.
  • Командою sel disk 0виберемо його та за допомогою detail diskуточнимо потрібні дані. Диск містить 2 томи - завантажувальний стомегабайтний C та системний D. Для подальшої роботи нам буде потрібен диск D.


  • Наберіть у командному рядку: dism /image:D: /get-packages. Ця команда відкриє перед вами список усіх встановлених оновлень із зазначенням дати та часу інсталяції. Дата нам стане в нагоді визначити, які пакети були встановлені перед тим, як сталася помилка.


  • Щоб деінсталювати оновлення, необхідно скопіювати його ім'я - "посвідчення пакета" (виділено рамкою) і вставити в команду видалення. Робиться це також за допомогою утиліти dism. За допомогою лівої кнопки миші виділіть пакет, який видалятимете, і для копіювання натисніть на нього правою кнопкою миші. Потім наберіть команду: dism/image:D: /remove-package /packagename:і відразу після двокрапки вставте скопійований рядок. Вставка, як і копіювання, виконується правим кліком.


  • Натисніть клавішу enter, і через кілька секунд оновлення буде видалено. Якщо ви не впевнені, що помилка виникла через нього, видаліть усі пакети, які були поставлені незадовго до збою.

Відновлення засобами ERD Commander

Розширений набір коштів відновлення Windows 7 - ERD Commander 6.5-7 версій, має спеціальний інструмент для деінсталяції пакетів системних оновлень. Користуватися ним нескладно, до того ж не потрібно знати, через що конкретно виникає помилка — достатньо видалити всі оновлення, які були поставлені перед збоєм.

Образ ERD Commander попередньо записується на диск чи інший накопичувач, з якого потрібно завантажити комп'ютер. Процедура завантаження точно повторює вхід у середовище відновлення Windows 7. Єдиною відмінністю буде новий пункт меню параметрів відновлення: «Diagnostics & Recovery Toolset» Його і потрібно вибрати.


  • З набору засобів діагностики та відновлення виберіть «Видалення виправлень».


  • Запуститься майстер деінсталяції оновлень. Щоб отримати список пакетів, натисніть «Далі».


  • Позначте оновлення, після яких, на вашу думку, виникла помилка. Натисніть "Далі" - вибрані пакети будуть видалені.


Автори програми рекомендують деінсталювати оновлення по одному, щоразу перезавантажуючи комп'ютер і перевіряючи, чи вирішена проблема. Але не буде помилкою і одночасне видалення всього, що було встановлене перед збоєм, - це прискорить діагностику.

Профілактика збоїв внаслідок встановлення оновлень

Після того, як ви виявили та деінсталювали проблемне оновлення, потрібно зробити так, щоб воно більше не встановлювалося. Знаючи номер, можна просто заборонити його завантаження. Для цього:

  • відкрийте «Центр оновлень Windows» на панелі керування;


  • натисніть «Пошук оновлень» — серед того, що Windows 7 запропонує вам встановити, буде пакет, який викликав збій;


  • клацніть по знайденим доступним оновленням;
  • за номером знайдіть у списку проблемний пакет, зніміть з нього позначку, відкрийте контекстне менюта клацніть пункт «Приховати оновлення».


Більше воно не встановиться на ваш комп'ютер.

З інших заходів щодо запобігання подібних неприємностей варто відзначити побажання відмовитися від використання піратських копій Windows і «крутих збірок від дядька Васі» на користь ліцензійних систем. Якщо ж це сталося у власника офіційної ліцензії, важливо повідомити про проблему в Microsoft. А якщо систему було встановлено — то й виробнику комп'ютера. Це змусить розробників визнати наявність проблеми та вжити заходів щодо її вирішення.

Усі ми звикли довіряти оновлень Microsoft Windows - стоїть, на автоматі щось там вантажить, само завантажується, само встановлюється, лише зрідка блимаючи піктограмою Windows Update в нижньому правому куті монітора. Так було і цього разу, скачало, поморгало, пішло в перезавантаження і потім видало:

Помилка під час запуску програми (0xc0000005). Щоб вийти з програми, натисніть кнопку “OK”.

або англійською:


Після появи цього віконця система вивантажує всі програми з пам'яті. При цьому неможливо запустити жодну програму, діагностику та інше, щоб перевірити та з'ясувати, що сталося.

Спочатку ця ситуація викликає стан, схожий на паніку. Ще б пак, щойно все працювало і ось ті на! Особливо якщо на носі якийсь важливий проект, що вимагає негайного завершення.

Коротше, на вигляд – нічого хорошого. Багато повелися на це перше враження і зробили перше, що спадає на думку - а саме знесли всю систему і встановили по новій. Яке ж було їхнє подив, коли при оновленні нововстановленої вінди дана помилкавискочила знову!

Виявляється, проблема простіше і вирішується двома клацаннями мишки.

Вирішуємо проблему помилки 0xc0000005 після оновлення Windows

Спосіб 1

Отже, для того, щоб вирішити проблему помилки 0xc0000005 після оновлення Windows, необхідно і достатньо набрати команду:

при натисканні кнопки Пуску рядок, де написано “знайти програми та файли” та натиснути Enter.

Спосіб 2

Якщо цього рядка немає, потрібно натиснути кнопку WIN+Rдля виклику меню “ Виконати” і вже там запровадити: wusa.exe /uninstall /kb:2859537

Ось коротке відео я зняв, щоб було зрозуміло:

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

Спосіб 3

Є ще один шлях - піти в Пуск -> Панель управління -> Система -> Додаткові параметри системи -> Захист системи -> Відновлення

Там вибрати дату, що перед тим, коли ви встановили злощасне оновлення і натиснути далі. Система сама виконає видалення непотрібних компонентів і повернеться до робочого стану.

Що потім

А потім – суп із котом. Виконавши цю маніпуляцію, необхідно ВІДКЛЮЧИТИ автоматичне оновленняінакше вам доведеться знову і знову відкочувати систему назад. Як це зробити?

Та все просто, йдемо по дорозі - Пуск -> Панель управління -> Windows Update -> Налаштування параметрів і там відключаємо оновлення Windows Update.


Трохи пізніше, коли проблема розсмокчеться, ми його включимо назад, а поки що нехай буде так.

Для найважчих випадків

Важливе зауваження тим, хто має після запуску команди wusa.exe /uninstall /kb:2859537Вінда видає повідомлення, що таке оновлення не знайдено, а Програми та компонентив Панелі керуванняне запускається. Вам потрібно перезавантажитися в безпечному режимі (через клавішу F8) і після цього видалити оновлення Програми та компоненти.

І ще:

Щоб визначити, чи виникне проблема після встановлення KB2859537, достатньо запустити командний рядок з правами адміністратора і написати там:


Якщо параметр kernel є, значить використовується нестандартне ядро ​​і після встановлення оновлення проблема виникне (за умови, що ядро ​​старе, а зараз воно таке у 99.99% користувачів цього патча). Тут xNtKrnl.exe — ім'я старого пропатченого ядра, яке залишається незмінним після встановлення будь-якого офіційного оновлення, а тому діри в безпеці ядра залишатимуться навіть після встановлення всіх оновлень, якщо не патчити нове ядро ​​після кожного такого оновлення, навіть якщо візуально проблем немає.
Якщо ж параметра kernel немає, то використовується стандартне ядро ​​і оновлення встановлювати можна.

Рішення від simplix

Вирішення проблеми, яке надав всім добре відомий simplix:Цитата:
Зробив фікс цієї проблеми. Це 64-бітна програма, яка оновлює старе ядро ​​до актуальної версії(незалежно від версії нового ядра, але лише для файлів із KB2859537). Дане виправлення не має відношення до активаторів, тобто на оригінальній системі нічого не зробить, а на складаннях нічого в систему не пропише, тільки оновить ядро ​​xNtKrnl.exe і не більше. Це найкраще рішенняна даний моментпісля встановлення KB2859537 на патчену систему, оскільки разом з усуненням помилки 0xc0000005 закриває всі вразливості, а якщо оновлення видалити - вразливості залишаться. Перевірено на Win7 SP1 x64 та Win2008 SP1 R2 x64.


А у нас поки що все, бажаю удачі та працездатної вінди!

зи. Вчора поставилися оновлення, знову 0x000005. Зробив відкат на точку відновлення системи. Поставив усі оновлення крім KB2872339 (його приховав). Що робити зараз? Чи ставити KB2872339_Fix? Як не допустити таких помилок після оновлення?

KB2872339_Fix.exe повністю замінює KB2859537_Fix.exe і виправляє помилку 0xc0000005 після встановлення будь-якого з оновлень

(Прибирайте антивіруси або запускайте фікс в безпечному режимі).

зи2. На мій погляд Fix — це, звичайно, чудово рятує, але краще вирішити проблему глобально.

Я зробив так:
1. Запустив активатор та видалив драйвер (кнопка Uninstall Driver).

 

 

Це цікаво: