Если при установке/запуске игры или программы на Windows 7, 8 или 10 возникает ошибка 0xc000012f “Программа не предназначена для выполнения в Windows” или “Bad Image” следуйте этой инструкции.
Достаточно частый вопрос на форумах поддержки, задаваемый не только геймерами, но и пользователями обычных программ для Windows, касается вывода сообщения об ошибке во время исполнения библиотек (.dll) или запуска программ (.exe) с описанием “не предназначена для выполнения в Windows” и указанием кода ошибки 0xc000012f. Также в части описания этих ошибок может быть указано “Bad Image — возможно, файл поврежден”. Данная инструкция содержит все возможные варианты устранения этой ошибки.
Ошибка 0xc000012f
Программа либо не предназначена для выполнения под управлением windows или содержит ошибку. Попробуйте переустановить программу с помощью исходного установочного носителя или обратитесь к системному администратору или поставщику программного обеспечения за поддержкой. Состояние ошибки 0xc000012f – Сообщение об ошибке
Регистрация .DLL
Если в ошибке содержится путь к .DLL файлу из системной папки Windows, например “C:Windowssystem32mscoree.dll” помогает перерегистрация этой библиотеки в ОС. Просто запустите командную строку с правами Администратора и выполните команду, заменив путь к файлу из сообщения об ошибке:
regsvr32.exe C:Windowssystem32mscoree.dll
Переустановка Visual C++
Если проблема касается некоторого файла или библиотеки (например, mfc140u.dll), которая является частью пакета Visual C++ (различных версий), то установщик или запуск могут закончиться неудачно. Скачайте и установите распространяемые пакеты Visual C++, которые установят компоненты среды выполнения программ, необходимые для запуска приложений C++, разработанных в Visual Studio.
На данный момент для большинства игр и программ остаются актуальными следующие версии пакетов Visual C++, распространяемых бесплатно на сайте Microsoft. Производитель заявляет об отсутствии необходимости установки более ранних пакетов, если установлена свежая версия, но некоторым пользователям это помогло.
- Распространяемый пакет Visual C++ для Visual Studio 2015 https://www.microsoft.com/ru-RU/download/details.aspx?id=48145
- Распространяемый пакет Visual C++ для Visual Studio 2013 https://www.microsoft.com/ru-ru/download/details.aspx?id=40784
- Распространяемый пакет Visual C++ для Visual Studio 2012 (c обновлением 4) https://www.microsoft.com/ru-ru/download/details.aspx?id=30679
Вне зависимости от разрядности Windows (32 или 64 бит) рекомендуется при загрузке указать обе версии пакетов, отметив x86 и x64, и установить все перечисленные пакеты. ARM версии можно не устанавливать.
Информация для технических специалистов по массовой установке и решения возникающих в процессе установки ошибок с этими пакетами приведена на сайте MSDN https://msdn.microsoft.com/ru-ru/library/ms235299.aspx
Если установка или переустановка пакета Visual C++ не помогает, необходимо переустановить пакет .NET Framework
Переустановка .NET Framework
В большинстве случаев помогает обновление или переустановка пакета .NET Framework. Перед установкой требуется закрыть все работающие программы, а после — перезагрузить компьютер.
Для Windows Vista SP2, Windows 7 SP1, Windows 8, Windows 8.1, Windows Server 2008 SP2, Windows Server 2008 R2 SP1, Windows Server 2012 и Windows Server 2012 R2 нужно установить следующую версию Microsoft .NET Framework 4.6 (автономный установщик) https://www.microsoft.com/ru-RU/download/details.aspx?id=48137
Для Windows 10 скачивать этот пакет не нужно, так как эта версия ОС комплектуется последним пакетом .NET Framework.
Для более ранних программ и игр дополнительно может потребоваться пакет .NET Framework 3.5. Установите его крайнюю версию: Microsoft .NET Framework 3.5 SP1 (атономный установщик) https://www.microsoft.com/ru-RU/download/details.aspx?id=25150