Как видно из текста ошибки, проблема заключается в инициализации DirectX 11, а точнее, Direct3D 11, за что и отвечает файл d3d11.dll. При этом, несмотря на то, что, используя инструкции в Интернете, вы уже могли заглянуть в dxdiag и увидеть, что DX 11 (а то и DirectX 12) установлен, проблема может сохраняться. В этой инструкции — подробно о том, как исправить ошибку D3D11 CreateDeviceAndSwapChain Failed или d3dx11.dll отсутствует на компьютере.
Исправление ошибок D3D11
Причиной рассматриваемой ошибки могут быть различные факторы, самые распространенные из которых
- Ваша видеокарта не поддерживает DirectX 11 (при этом, нажав клавиши Win+R и введя dxdiag, вы можете там видеть, что установлена именно 11 или 12 версия. Однако, это ничего не говорит о том, что есть поддержка этой версии со стороны видеокарты — только о том, файлы данной версии установлены на компьютере).
- Не установлены последние оригинальные драйверы на видеокарту — при этом начинающие пользователи часто пробуют обновить драйверы, используя кнопку «Обновить» в диспетчере устройств, это неправильный метод: сообщение о том, что «Драйвер не нуждается в обновлении» при данном способе обычно мало что означает.
- Не установлены необходимые обновления для Windows 7, что может приводить к тому, что даже при наличии DX11, файла d3d11.dll и поддерживаемой видеокарты, игры, наподобие Dishonored 2 продолжают сообщать об ошибке.
Первые два пункта взаимосвязаны и в равной степени могут встречаться как у пользователей Windows 7, так и Windows 10.
Правильным порядком действий при ошибках в данном случае будет:
- Вручную скачать оригинальные драйверы видеокарты с официальных сайтов AMD, NVIDIA или Intel (см., например, Как установить драйверы NVIDIA в Windows 10 ) и установить их.
- Зайти в dxdiag (клавиши Win+R, ввести dxdiag и нажать Enter), открыть вкладку «Экран» и в разделе «Драйверы» обратить внимание на поле «DDI для Direct3D». При значениях 11.1 и выше ошибки D3D11 появляться не должны. При меньших — скорее всего дело в отсутствии поддержки со стороны видеокарты или ее драйверов. Либо, в случае Windows 7, в отсутствии необходимого обновления платформы, о чем — далее.
Также вы можете посмотреть отдельно установленную и поддерживаемую аппаратно версию DirectX в сторонних программах, например, в AIDA64 (см. Как узнать версию DirectX на компьютере ).
В Windows 7 ошибки D3D11 и инициализации DirectX 11 при запуске современных игр могут появляться даже в тех случаях, когда необходимые драйверы установлены, а видеокарта не из старых. Исправить ситуацию можно следующим образом.
Как скачать D3D11.dll для Windows 7
В Windows 7 по умолчанию может не быть файла d3d11.dll, а в тех образах, где он присутствует, может не работать с новыми играми, вызывая ошибки инициализации D3D11.
Его можно скачать и установить (или обновить, если он уже есть на компьютере) с официального сайта Майкрософт в составе выпущенных для 7-ки обновлений. Скачивать этот файл отдельно, с каких-то сторонних сайтов (или брать с другого компьютера) не рекомендую, навряд ли это исправит ошибки d3d11.dll при запуске игр.
- Для правильной установки необходимо скачать Обновление платформы Windows 7 (для Windows 7 SP1) — https://www.microsoft.com/ru-ru/download/details.aspx?id=36805 .
- После загрузки файла, запустите его, и подтвердите установку обновления KB2670838.
По завершении установки и после перезагрузки компьютера, рассматриваемая библиотека будет в нужном расположении (C: Windows System32 ), а ошибок, связанных с тем, что d3d11.dll или отсутствует на компьютере или D3D11 CreateDeviceAndSwapChain Failed, появляться не будет (при условии, что у вас достаточно современное оборудование).