Исправление: D3D11.dll не предназначен для работы в Windows.

Ошибка « C: \ Windows \ SysWOW64 \ D3D11.dll либо не предназначена для работы в Windows, либо содержит ошибку » обычно возникает, когда пользователь открывает приложение или игру.

D3D11.dll файл является частью распределения DirectX11 и регулярно используется играми и приложениями , которые требуют много графической обработки.

Хотя большинство ошибок D3D11.dll обычно устраняются после того, как пользователь переустанавливает коллекцию программного обеспечения DirectX, эта конкретная проблема немного отличается. Большинство пользователей, столкнувшихся с этой ошибкой, сообщили, что переустановка распространяемых коллекций не помогла решить проблему.

Предупреждение: Не пытайтесь заменить версию d3d11.dll так называемой «чистой версией» с сайтов загрузки DLL. Многие файлы, размещенные там, будут содержать вредоносный код, который сделает вашу систему уязвимой для будущих атак на безопасность. В подобных ситуациях предпочтительнее использовать официальные каналы.

Если вы в настоящее время боретесь с тем, что « C: \ Windows \ SysWOW64 \ D3D11.dll либо не предназначен для работы в Windows, либо содержит ошибку », приведенные ниже исправления, скорее всего, решат проблему. Нам удалось определить несколько жизнеспособных методов, которые решат проблему, опубликованную пользователями, которые оказались в такой же ситуации. Следуйте инструкциям по порядку, пока не найдете исправление, которое разрешит вашу ситуацию.

Метод 1: запуск сканирования SFC

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

Примечание.  Средство проверки системных файлов - это локально хранимая утилита, которая позволяет пользователям сканировать и восстанавливать поврежденные системные файлы Windows. Сканирование с помощью утилиты SFC будет искать любые изменения внутри защищенных системных файлов. Если будут обнаружены какие-либо изменения, утилита заменит все поврежденные / измененные экземпляры локально сохраненными свежими копиями.

Выполните следующие действия, чтобы выполнить сканирование с помощью средства проверки системных файлов и посмотреть, удастся ли решить проблему « C: \ Windows \ SysWOW64 \ D3D11.dll либо не предназначен для работы в Windows, либо содержит ошибку »:

  1. Откройте командную строку с повышенными привилегиями, войдя в меню «Пуск» Windows в нижнем левом углу и выполнив поиск по запросу « cmd ». Затем щелкните правой кнопкой мыши командную строку и выберите « Запуск от имени администратора» .

  2. В командной строке с повышенными привилегиями введите « sfc / scannow»  и нажмите Enter, чтобы начать сканирование средства проверки системных файлов .

  3. Подождите, пока сканирование завершится. В зависимости от размера вашего жесткого диска и других характеристик ПК этот процесс займет чуть меньше или значительно больше 20 минут.
  4. После завершения процесса закройте командную строку с повышенными привилегиями и перезагрузите компьютер.
  5. Убедитесь, что « C: \ Windows \ SysWOW64 \ D3D11.dll либо не предназначен для работы в Windows, либо содержит ошибку » был устранен при следующем запуске. Если вы все еще боретесь с той же проблемой, перейдите к методу 2 .

Способ 2. Повторная регистрация файла D3D11.dll

Независимо от результата в методе 1, давайте попробуем повторно зарегистрировать все файлы .DDL на вашем компьютере и посмотрим, удастся ли это разрешить « C: \ Windows \ SysWOW64 \ D3D11.dll» либо не предназначен для работы в Windows, либо он содержит ошибку ». Некоторые пользователи сообщили, что проблема была решена в конце этого процесса.

Вот краткое руководство по перерегистрации файлов .DLL на вашем компьютере ( включая D3D11.dll ):

  1. Откройте меню «Пуск» Windows в  (нижний левый угол) и введите « cmd ». Затем щелкните правой кнопкой мыши командную строку и выберите «  Запуск от имени администратора»,  чтобы открыть командную строку с повышенными привилегиями .

  2. В командной строке с повышенными привилегиями введите следующую команду и нажмите Enter :

    для% d в (* .dll) выполните regsvr32 -s% d

  3. Подождите, пока процесс завершится. Когда вы получите сообщение с подтверждением, закройте окно командной строки с повышенными привилегиями и перезагрузите компьютер.
  4. При следующем запуске перезагрузите компьютер, откройте приложение, которое отображало сообщение « C: \ Windows \ SysWOW64 \ D3D11.dll либо не предназначено для работы в Windows, либо содержит сообщение об ошибке », и проверьте, были ли устранены указанные выше действия. проблема.

Если вы по-прежнему сталкиваетесь с той же ошибкой, перейдите к последнему методу.

Метод 3. Замена файла d3d11.dll локальной копией вручную

Если оба вышеперечисленных метода не помогли, давайте выберем более радикальный подход. Некоторым пользователям, борющимся с той же проблемой, удалось решить эту проблему после того, как они взяли на себя ответственность за  файл d3d11.dll  из папки sysWow и затем заменили его новой копией из папки winsxs .

Примечание. Имейте в виду, что существует два разных  файла d3d11.dll  - один находится в папке sysWOW, а другой - в system32 . Следующие шаги будут выполнены с файлом d3d11.dll, находящимся в папке  sysWOW .

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

Вот пошаговое руководство, как стать владельцем  файла d3d11.dll (из sysWOW ), удалить его вручную и затем заменить его локальной копией из  папки winsxs :

  1. Откройте меню «Пуск» Windows в  (нижний левый угол) и введите « cmd ». Затем щелкните правой кнопкой мыши командную строку и выберите «  Запуск от имени администратора»,  чтобы открыть командную строку с повышенными привилегиями .

  2. Вставьте следующую команду в командную строку с повышенными привилегиями и нажмите Enter, чтобы стать владельцем  файла d3d11.dll : takeown / f C: \ Windows \ SysWOW64

    Примечание: В случае , если вы работаете на 32-битной архитектуре, изменить Syswow64 папку SysWow.

  3. Даже сейчас, когда мы владеем файлом, мы все еще не можем удалить его, потому что у нас нет соответствующих прав. Чтобы получить их, нам нужно запустить команду cacls в командной строке с повышенными привилегиями, чтобы получить полный контроль. Для этого вставьте следующие команды в командную строку с повышенными привилегиями и нажмите Enter :

    cacls C: \ Windows \ System32 \ en-US \ winload.exe.mui / G * приложения *: F

    Примечание: имейте в виду, что * appuals * - это просто заполнитель для вашего имени пользователя. Чтобы эта команда работала, вам нужно заменить ее своим именем пользователя.

  4. На вопрос « Вы уверены?» введите букву « Y » и снова нажмите Enter . На этом этапе вы можете безопасно закрыть командную строку с повышенными привилегиями .

  5. После завершения шага 4 вы сможете удалить  файл d3d11.dll обычным способом  . Самый простой способ сделать это - перейти в  папку C: \ Windows \ SysWOW64 , найти  файл d3d11.dll  и удалить его.

  6. Затем перейдите в папку C: \ Windows \ WinSxS \ wow64_microsoft-windows-directx-direct3d11_31bf3856ad364e35_10.0.16299.248_none_079cb6546cd25135  и скопируйте оттуда чистый  файл d3d11.dll  .
  7. Примечание: Если вы не можете найти d3d11.dll в этом месте, используйте строку поиска в правом верхнем углу для поиска d3d11.dll. Если функция поиска находит несколько вхождений, скопируйте то, которое имеет самую последнюю дату.
  8. Наконец, вставьте ранее скопированный  файл d3d11.dll  в  SysWow (или SysWOW64)  и перезагрузите компьютер. Убедитесь, что проблема « C: \ Windows \ SysWOW64 \ D3D11.dll либо не предназначена для работы в Windows, либо содержит ошибку » устранена при следующем запуске.