Ошибка 0xc0000142 при запуске приложения Office или тяжелых игр
- Перезагрузись и запусти приложение от администратора: разовый сбой инициализации иногда лечится просто, и это проверка на везение за минуту.
- Проверь реестровый ключ AppInit_DLLs:
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows— параметр должен быть пустым, а LoadAppInit_DLLs равен 0; непустой означает троянские библиотеки, инжектнутые во все процессы. - Для Office запусти штатное восстановление: Файл → Приложения и возможности → Office → Изменить → Быстрое восстановление, затем Онлайн-восстановление, если первое не помогло.
- Для игр проверь целостность файлов в лаунчере: Steam и Epic чинят побитые DLL игры за десять минут без переустановки.
- Прогони
sfc /scannowпосле DISM: битые системные библиотеки восстанавливаются штатно, и половина случаев 0xc0000142 уходит. - Переустанови пакеты Visual C++ обеих разрядностей: приложения, собранные против свежих рантаймов, падают с этим кодом при их отсутствии или поломке.
Двойной клик по Word или по ярлыку тяжёлой игры — и вместо окна приложения вылезает серое сообщение: «Ошибка при запуске приложения 0xc0000142». Программа не стартует вовсе, ни в безопасном режиме окна, ни внятной причины в сообщении. Код означает, что одна из библиотек приложения не смогла инициализироваться при старте: процесс начал собираться и споткнулся о битый или чужой DLL. Виновников у этого спотыкания пять, от побитых файлов самого приложения до троянских библиотек, прописанных в системном реестре. Разбираю по шагам, как найти конкретного виновника и почему начинать нужно не с переустановки.
Матчасть: что именно не инициализировалось
При старте процесса Windows загружает исполняемый файл и цепочку библиотек DLL, которые он объявил нужными: свои, системные, рантаймы. Каждая библиотека при загрузке выполняет собственную инициализацию, и если одна из них падает на этом этапе, процесс убивается целиком с кодом 0xc0000142, без внятного имени виновника в сообщении. Отсюда пять классов виновников: побитые файлы самого приложения, побитые системные библиотеки, отсутствующие или битые рантаймы Visual C++, чужие библиотеки, прописанные трояном в системный механизм AppInit_DLLs и грузящиеся во все процессы разом, и конфликты окружения, от побитого профиля пользователя до несовместимых настроек региона для старого софта. Понимание классов даёт порядок проверок: свои файлы приложения, затем системные, затем реестровый инжект, затем окружение.
Шаг 1. Быстрые проверки: перезапуск и администратор
Перезагрузи компьютер и попробуй запустить приложение снова: разовый сбой инициализации из-за занятого файла или фонового обновления иногда исчезает сам. Затем ПКМ по ярлыку → Запуск от имени администратора: часть приложений пишет служебные данные при старте и падает с 0xc0000142 без прав на собственные папки. Если оба действия не помогли, переходи к системным шагам: виновник сидит глубже разового сбоя, и гадать дальше бесполезно. Заодно запомни, падает ли одно приложение или несколько разом: несколько разных программ с тем же кодом указывают на системную библиотеку или AppInit_DLLs, одна программа — на свои файлы.
Шаг 2. AppInit_DLLs: троянская игла в системном механизме
Служебные окна Windows (regedit, msconfig) открываются так: нажми Win и R вместе, введи имя команды и нажми Enter.
Механизм AppInit_DLLs позволяет прописывать библиотеки, которые Windows грузит в каждый процесс с графическим интерфейсом, и трояны обожают его за всеохватность: одна чужая DLL в реестре даёт 0xc0000142 сразу у множества приложений. Проверь: Win + R → regedit → HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows. Параметр AppInit_DLLs должен быть пустым, а LoadAppInit_DLLs равен 0. Если в AppInit_DLLs прописаны пути к DLL в Temp, AppData или ProgramData — это инжект: сфотографируй пути, обнули параметр, перезагрузись и проверь запуск приложений, затем зачисти машину CureIt и KVRT по найденным путям. Для 32-битных процессов проверь ту же ветку в WOW6432Node.
Шаг 3. Свои файлы приложения: Office и игры
Для Office штатный путь восстановления чинит побитые библиотеки без потери документов: Параметры → Приложения → Установленные приложения → Microsoft Office → Изменить → Быстрое восстановление; если не помогло, там же Онлайн-восстановление, которое переустанавливает пакет начисто, сохраняя настройки и файлы. Для игр из Steam: библиотека → ПКМ → Свойства → Установленные файлы → Проверить целостность; Epic и GOG имеют аналогичные кнопки. Для приложений, ставшихся без лаунчера, помогает ремонтная установка поверх: запусти установщик заново и выбри режим восстановления, если он есть. Переустановка начисто — последний шаг для одиночного приложения, но до неё доходит меньшинство: восстановление файлов чинит большинство случаев за минуты.
Шаг 4. Системные библиотеки и рантаймы
Если падает несколько приложений разом, виновата системная библиотека или рантайм. Командная строка от администратора: сначала DISM /Online /Cleanup-Image /RestoreHealth, затем sfc /scannow, именно в таком порядке. После перезагрузки проверь запуск. Вторым заходом поставь пакеты Visual C++ 2015-2022 обеих разрядностей x86 и x64 с сайта Microsoft: приложения, собранные против свежих рантаймов, выдают 0xc0000142 при их поломке, а установка поверх чинит повреждённые компоненты. Для старого софта проверь также .NET Framework 3.5 в компонентах Windows: часть классических приложений падает с этим кодом именно без него.
Шаг 5. Окружение: профиль, регион, чистый запуск
Если файлы целы, реестр чист и системы восстановлены, а код остался, смотри окружение. Чистый запуск покажет конфликт со сторонними службами: Win + R → msconfig → Службы → галочка «Не отображать службы Microsoft» → Отключить все → перезагрузка; запустилось приложение — включай службы пачками по пять и ищи конфликтующую. Побитый профиль пользователя проверяется созданием новой учётки: заходи под ней и запускай приложение, работает — переноси данные в новый профиль. Редкий, но живой случай — старый софт и регион: приложения эпохи 2000-х падают с 0xc0000142 при несовместимой кодировке системной локали, и лечится вкладкой «Дополнительно» в настройках региона с выбором языка не-Unicode-программ под приложение.
Частые факапы
- Переустанавливает приложение первым делом при трояне в AppInit_DLLs: новая установка получает ту же чужую библиотеку в каждом процессе, и код возвращается в первый же запуск.
- Смотрит только 64-битную ветку реестра и пропускает WOW6432Node: 32-битные процессы читают инжект из второй ветки, и половина чисток оказывается половинчатой.
- Гоняет sfc без DISM при побитом хранилище компонентов: sfc лечит из битого источника и рапортует «не удалось исправить», теряя вечер.
- Ставит рантаймы только x64 на системе с 32-битными приложениями: офисные надстройки и старый софт живут в x86, и им нужна своя разрядность пакетов.
- Игнорирует факт, что код появился после установки «ускорителя» или кряка: именно они приносят чужие DLL и ломают инициализацию, и лечение начинается с удаления принесённого.
Вывод
Ошибка 0xc0000142 — это обрыв старта приложения на одной битой или чужой библиотеке, и поиск виновника идёт по пяти ступеням: свои файлы приложения через штатное восстановление, троянский инжект в AppInit_DLLs, системные библиотеки через DISM и sfc, рантаймы Visual C++ обеих разрядностей, окружение через чистый запуск и новый профиль. Ключевая развилка бесплатна и мгновенна: падает одно приложение — виноваты его файлы или рантаймы, падает всё разом — смотри реестровый инжект и системные библиотеки. Держи эту развилку в голове до любых переустановок: она экономит час бесполезных установок и выводит на трояна раньше, чем он унесёт что-то важное.