Ошибка при запуске приложения 0xc0000142: причина и устранение

При старте какой-нибудь игры у многих пользователей возникает ошибка при запуске приложения 0xc0000142. Пользователь прекрасно видит имя файла, код проблемы, но при этом абсолютно не понимает, что делать и что искать в этой ситуации.

Из текста ошибки можно вполне догадаться, что по тем или иным причинам приложение не смогло правильно загрузиться, и если немного покопаться на форумах, то в таком случае максимум, который можно понять – это то, что ошибка при запуске приложения 0xc0000142 говорит об отсутствии определенной .dll библиотеки или же ошибке в ее загрузке. Однако непонятно, какая именно библиотека пропала, и в этой ситуации остается просто составить полный список библиотек, которые используются данным процессом, после чего проверить, присутствует ли каждая из них на диске. Конечно, есть огромнейшее количество качественных утилит, которые позволяют просматривать таблицу импорта того или иного файла в окружении неизвестных цифр и аббревиатур, однако большинство пользователей, сталкиваясь с подобными проблемами, просто начинают переустанавливать операционную систему. Более спокойные люди начинают искать адекватное решение проблемы в сети.

Что делать?

Конечно, если у вас появилась ошибка при запуске приложения 0xc0000142, то вам не стоит начинать искать программы, которые будут выдавать вам полный список библиотек, чтобы вы их выписывали и по одной искали на своем компьютере, убеждаясь в целости и сохранности содержимого. Даже несмотря на то что в таблице импорта на компьютере таких библиотек может быть не так много, занятие по их поиску может затянуться надолго. В частности, стоит отметить, что ручной поиск причины данной ошибки занимает не менее четырех часов даже у продвинутых пользователей. И это уже не говоря о том, что утилита в процессе работы может самостоятельно динамически загрузить любую библиотеку, вследствие чего под подозрение может попасть практически весь компьютер, и найти, почему произошла ошибка при запуске приложения 0xc0000142, уже не получится.

Как определить библиотеку?

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

Где найти лог?

Текстовый файл создается непосредственно в папке с программой и после окончания ее работы открывается в "Блокноте". После этого вы самостоятельно сможете проанализировать данный файл для того, чтобы определить наличие тех или иных ошибок, и скачать нужный документ.

Что нужно знать?

Чтобы программа действительно определила, почему у вас возникла ошибка при инициализации приложения 0xc0000142, вам следует запомнить следующие действия:

  • Программа должна в обязательном порядке запускаться исключительно от имени администратора. Если этого не произойдет, то в таком случае вам высветится окно с сообщением о том, что утилита может работать некорректно.
  • Программа не будет вносить никаких изменений в структуру вашего жесткого диска, а также не записывает ничего в реестр компьютера. Именно по этой причине ее использование является доступным для всех пользователей, после чего ее запросто можно будет удалить.
  • Если вы имеете определенные знания в сфере системного программирования, а также знаете немного английский язык, то в таком случае вы вполне можете использовать одну из лучших утилит в этом плане, которая называется Depedency Walker. Программа позволит вам быстро определить, почему у вас появилась ошибка при инициализации приложения 0xc0000142.
  • Если в открытом логе вам абсолютно все непонятно, то в таком случае вам следует задуматься о том, чтобы поискать коллег по проблеме. В преимущественном большинстве случаев нет никаких сложностей, чтобы найти, у кого еще возникала в аналогичной ситуации 0xc0000142-ошибка. Что делать, можно будет узнать у собратьев по несчастью, ведь любую проблему уже кто-то когда-то решал.

Известные проблемы

На сегодняшний день есть достаточно большое количество игр, при запуске которых появляется 0xc0000142-ошибка. Что делать в таких ситуациях, вы сможете прочитать ниже.

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

Sims 3

В этой игре l2.bin ошибка приложения 0xc0000142 возникает вследствие того, что был некорректно установлен DirectX на ваш компьютер. В данном случае можно достаточно просто решить проблему путем быстрой переустановки этой программы с официального сайта Microsoft.

Far Cry 3

Достаточно часто происходит и такая ситуация, когда ошибка инициализации 0xc0000142 возникает при попытке использования каких-либо модифицированных библиотек, которые пытаются нарушить лицензию оригинальной программы. В частности, данная ситуация достаточно часто встречалась у пользователей Far Cry 3, который невозможно было запустить на Windows XP, так как разработчики крэков под эту игру не догадались о том, что операционная система просто не может поддерживать DirectX 11.

Точно так же любая игра, которая обращается к библиотеке steam_api.dll, в конечном итоге может не запустится, и вместо этого у вас появится ошибка из-за подмененного файла, у которого нет копирайта от Valve. Именно по этой причине неоригинальная библиотека от Steam является изначально несовместимой с операционной системой ХР.

Lineage II

Основной процесс представляет собой 32-разрядное приложение, вследствие чего многие, запуская игру на 64-разрядных системах, просто не понимают, как устранить ошибку 0xc0000142. На самом же деле причина проблемы в данном случае кроется в том, что здесь отсутствуют функции IntelockedDecrement и InterlockedIncrement в таблице выгрузки библиотеки kernel32.dll, вследствие чего игру не получается запустить. Именно по этой причине вам следует скачать на компьютер библиотеки с точно таким же названием, но с окончанием «64». Стоит отметить, что даже на официальном сайте игры присутствует предупреждение о том, что игрой изначально не поддерживаются 64-разрядные системы, вследствие чего при попытке запуска на них она может работать некорректно.

Если же вы используете процессор от компании AMD, то в таком случае у вас проблема приобретает совершенно новый оборот, так как у этих процессоров используется два режима работы. В стандартном режиме упразднены определенные элементы архитектуры х86, вследствие чего нет никакой гарантии, что в такой системе в принципе будут работать те или иные 32-разрядные приложения. В другом же режиме обеспечивается полная совместимость с 32-разрядной системой, однако в данном случае не будет работать никакая 64-разрядная программа.

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

Комментарии