Как исправить DLL-ошибки в Windows 10 и Windows 11: пошаговая инструкция

Пошаговая инструкция, что делать при ошибках DLL в Windows 10 и 11: с чего начать, когда нужны Visual C++ и DirectX, как проверить SFC, DISM и диск и почему не стоит скачивать отдельные DLL-файлы.

Ноутбук с системным окном ошибки об отсутствующей DLL в Windows, рядом значки щита, шестерёнки и диагностики на спокойном сером фоне.

Как исправить DLL ошибки в Windows

Если при запуске программы или игры появляется сообщение «Не найден DLL-файл», «Запуск программы невозможен, так как отсутствует DLL» или «Не удалось продолжить выполнение кода», не спешите искать нужную библиотеку в интернете. В большинстве случаев скачивание DLL-файла с неизвестного сайта не только не решает проблему, но и может привести к заражению компьютера вирусами.

Гораздо безопаснее определить причину ошибки и восстановить отсутствующую библиотеку официальными средствами Windows или переустановить компонент, которому принадлежит DLL-файл.

В этой инструкции рассмотрим все способы исправления DLL-ошибок — от самых простых до более сложных.

Что такое DLL-файл простыми словами

DLL (Dynamic Link Library) — это библиотека, содержащая функции, которые могут использовать сразу несколько программ. Вместо того чтобы хранить одинаковый код в каждом приложении, Windows загружает его из отдельного DLL-файла.

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

Поэтому при отсутствии такой библиотеки программа просто не сможет запуститься.

Как выглядит DLL ошибка

Сообщения могут отличаться, но смысл остаётся одинаковым.

Наиболее распространённые варианты:

  • Запуск программы невозможен, так как отсутствует VCRUNTIME140.dll.
  • Не удалось продолжить выполнение кода, поскольку система не обнаружила MSVCP140.dll.
  • The code execution cannot proceed because SDL2.dll was not found.
  • libssl-3-x64.dll is missing.
  • d3dx9_43.dll отсутствует.
  • XINPUT1_3.dll не найден.
  • api-ms-win-crt-runtime-l1-1-0.dll отсутствует.

Несмотря на разные названия файлов, способы исправления очень похожи.

Почему появляются DLL ошибки

Наиболее частые причины:

  • случайное удаление DLL-файла;
  • неполная установка программы;
  • повреждение системных файлов Windows;
  • удаление файла антивирусом;
  • неустановленный Microsoft Visual C++ Redistributable;
  • отсутствие компонентов DirectX;
  • повреждение SSD или HDD;
  • ошибки после обновления Windows;
  • повреждение файловой системы.

С чего начать исправление DLL ошибок

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

Рекомендуется выполнять действия именно в таком порядке:

  1. Перезагрузить компьютер.
  2. Переустановить программу.
  3. Проверить карантин антивируса.
  4. Установить Microsoft Visual C++ Redistributable.
  5. Установить DirectX.
  6. Проверить системные файлы Windows.
  7. Проверить диск на ошибки.

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


Способ 1. Перезагрузите компьютер

Самый простой способ часто оказывается самым эффективным.

Если DLL не удалось загрузить из-за временного сбоя Windows, обычная перезагрузка может полностью решить проблему.

После перезапуска попробуйте снова открыть программу.

Когда этот способ помогает

  • после установки программы;
  • после установки обновлений;
  • после установки драйверов.

Способ 2. Переустановите программу

Если DLL принадлежит конкретной программе, проще всего переустановить именно её.

Во время установки недостающая библиотека обычно копируется автоматически.

Как правильно переустановить программу

  1. Удалите программу через «Приложения и возможности».
  2. Способ 5. Установите Microsoft Visual C++ Redistributable

    Если отсутствует один из следующих файлов:

    • VCRUNTIME140.dll
    • VCRUNTIME140_1.dll
    • MSVCP140.dll
    • MSVCP120.dll
    • MSVCR120.dll
    • MSVCP110.dll
    • MSVCR110.dll
    • MSVCP100.dll
    • MSVCR100.dll

    Практически всегда причина заключается в отсутствии или повреждении пакета Microsoft Visual C++ Redistributable.

    Эти библиотеки используются тысячами программ и игр. Если пакет не установлен или повреждён, Windows не сможет загрузить необходимые DLL.

    Как исправить

    1. Закройте программу, которая выдаёт ошибку.
    2. Установите официальные пакеты Microsoft Visual C++ Redistributable.
    3. После установки перезагрузите компьютер.
    4. Попробуйте снова запустить программу.

    Полезно знать

    Даже если у вас установлена 64-разрядная Windows, рекомендуется установить обе версии пакета — x64 и x86. Многие 32-битные программы используют именно x86-библиотеки.


    Какие DLL входят в Visual C++

    DLL Компонент Чаще всего используется
    VCRUNTIME140.dll Visual C++ 2015–2022 Современные программы и игры
    VCRUNTIME140_1.dll Visual C++ 2019–2022 Новые приложения
    MSVCP140.dll Visual C++ 2015–2022 Игры и программы
    MSVCP120.dll Visual C++ 2013 Более старые программы
    MSVCR120.dll Visual C++ 2013 Игры
    MSVCP110.dll Visual C++ 2012 Программы предыдущих лет
    MSVCR110.dll Visual C++ 2012 Игры

    Типичная ошибка пользователей

    Удаляют старые версии Visual C++, считая их ненужными.

    На самом деле разные программы требуют разные версии библиотек. Одной программе может понадобиться Visual C++ 2012, а другой — Visual C++ 2022.

    Поэтому удалять старые пакеты не рекомендуется, если они используются установленными приложениями.


    Способ 6. Установите DirectX Runtime

    Если отсутствуют следующие DLL:

    • d3dx9_24.dll
    • d3dx9_25.dll
    • d3dx9_26.dll
    • d3dx9_27.dll
    • d3dx9_28.dll
    • d3dx9_29.dll
    • d3dx9_30.dll
    • d3dx9_31.dll
    • d3dx9_32.dll
    • d3dx9_33.dll
    • d3dx9_34.dll
    • d3dx9_35.dll
    • d3dx9_36.dll
    • d3dx9_37.dll
    • d3dx9_38.dll
    • d3dx9_39.dll
    • d3dx9_40.dll
    • d3dx9_41.dll
    • d3dx9_42.dll
    • d3dx9_43.dll
    • XINPUT1_3.dll
    • XAudio2_7.dll
    • D3DCompiler_43.dll
    • D3DCompiler_47.dll

    Причина чаще всего связана с отсутствием компонентов DirectX Runtime.

    Даже в Windows 11 они могут отсутствовать, поскольку современные версии DirectX не содержат некоторые старые библиотеки, которые продолжают использовать игры.

    Как исправить

    1. Закройте игру.
    2. Установите официальный пакет DirectX End-User Runtime.
    3. Перезагрузите компьютер.
    4. Попробуйте снова запустить игру.

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


    Какие DLL относятся к DirectX

    DLL Назначение
    d3dx9_43.dll Direct3D 9
    XINPUT1_3.dll Работа игровых контроллеров
    XAudio2_7.dll Игровой звук
    D3DCompiler_43.dll Компиляция графических шейдеров
    D3DCompiler_47.dll Современные приложения DirectX

    Способ 7. Проверьте целостность системных файлов Windows

    Если DLL принадлежит самой Windows, переустановка программы уже не поможет.

    В этом случае необходимо проверить системные файлы.

    Запустите SFC

    Откройте Командную строку от имени администратора и выполните команду:

    sfc /scannow

    Что делает эта команда

    • проверяет системные DLL Windows;
    • сравнивает их с оригинальными копиями;
    • автоматически заменяет повреждённые файлы.

    Пример успешной проверки

    Beginning verification phase...
    
    Verification 100% complete.
    
    Windows Resource Protection found corrupt files and successfully repaired them.

    Это означает, что Windows восстановила повреждённые системные библиотеки.

    После успешной проверки обязательно перезагрузите компьютер.

    Типичная ошибка пользователей

    Запускают SFC без прав администратора.

    В этом случае утилита не сможет получить доступ к защищённым системным файлам.


    Если SFC не помогла

    Иногда можно увидеть сообщение:

    Windows Resource Protection found corrupt files but was unable to fix some of them.

    Это означает, что повреждено хранилище компонентов Windows.

    Следующим шагом следует использовать DISM.

    Запустите DISM

    DISM /Online /Cleanup-Image /RestoreHealth

    После успешного завершения снова выполните:

    sfc /scannow

    Такой порядок восстановления рекомендует Microsoft.

    Во время работы DISM индикатор выполнения может долго оставаться на 20%, 40%, 62% или 84%.

    Это нормально. Не закрывайте окно программы и не выключайте компьютер.


    Когда эти способы не помогут

    Даже правильно установленные Visual C++, DirectX и восстановленные системные файлы не всегда устраняют ошибку.

    Причиной могут быть:

    • неисправный SSD или HDD;
    • ошибки оперативной памяти;
    • неполная установка программы;
    • неверная разрядность программы;
    • несовместимая версия DLL;
    • повреждённый установщик программы.
  3. Перезагрузите компьютер.
  4. Скачайте последнюю версию с официального сайта разработчика.
  5. Установите программу повторно.

Типичная ошибка пользователей

Многие скачивают отдельную DLL из интернета вместо переустановки программы. В результате появляется новая ошибка или компьютер заражается вредоносным ПО.


Способ 3. Проверьте карантин антивируса

Иногда антивирус ошибочно определяет DLL-файл как потенциально опасный и помещает его в карантин.

Особенно часто это происходит с модифицированными играми, репаками и малоизвестными программами.

Что проверить

  1. Откройте журнал вашего антивируса.
  2. Проверьте раздел «Карантин».
  3. Если DLL действительно относится к установленной программе и вы уверены в её происхождении, восстановите файл.

Если программа была скачана с сомнительного сайта, сначала убедитесь, что файл безопасен. Не восстанавливайте объекты, происхождение которых неизвестно.


Способ 4. Никогда не скачивайте DLL-файлы с неизвестных сайтов

Это самый важный совет в статье.

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

Причин несколько:

  • невозможно проверить происхождение файла;
  • DLL может содержать вредоносный код;
  • можно скачать библиотеку неподходящей версии;
  • ошибка может быть вызвана вовсе не отсутствием DLL.

Если библиотека входит в состав Microsoft Visual C++, DirectX или самой программы, безопаснее установить соответствующий официальный компонент, чем копировать отдельный файл вручную.

Запомните правило:

Скачивают не DLL-файл, а программу или компонент, которому он принадлежит.

Способ 8. Проверьте разрядность программы и Windows

Одна из самых распространённых причин DLL-ошибок — несовместимость 32-битных и 64-битных библиотек.

Например, программа пытается загрузить 64-разрядную DLL, а рядом находится только её 32-разрядная версия. В результате Windows сообщает, что библиотека отсутствует или имеет неправильный формат.

Как узнать разрядность Windows

  1. Нажмите Win + Pause или откройте Параметры → Система → О системе.
  2. Найдите пункт Тип системы.

Там будет указано:

  • 64-разрядная операционная система;
  • 32-разрядная операционная система.

Полезно знать

64-разрядная Windows умеет запускать как 64-битные, так и большинство 32-битных программ. Именно поэтому рекомендуется устанавливать обе версии Visual C++ — x64 и x86.


Почему DLL может существовать, но Windows сообщает, что она отсутствует

Этот вопрос часто вызывает недоумение у пользователей.

Причин может быть несколько.

DLL повреждена

Файл существует, но содержит ошибки или был изменён.

DLL не подходит по версии

Программа ожидает более новую или более старую версию библиотеки.

Отсутствует зависимая библиотека

Очень частая ситуация.

Например, приложение сообщает об ошибке:

libssl-3-x64.dll was not found

На самом деле рядом может отсутствовать:

  • libcrypto-3-x64.dll;
  • VCRUNTIME140.dll;
  • MSVCP140.dll.

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

Поэтому не стоит копировать DLL по одной. Намного правильнее восстановить весь программный компонент.


Способ 9. Проверьте журнал событий Windows

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

Как открыть журнал событий

  1. Нажмите Win + R.
  2. Введите:
eventvwr.msc
  1. Откройте раздел Журналы Windows → Приложение.

Особое внимание обратите на события уровня Ошибка.

В описании часто можно увидеть:

  • имя программы;
  • имя DLL;
  • код ошибки;
  • время возникновения проблемы.

Если ошибка появляется регулярно, журнал событий значительно ускоряет поиск причины.


Способ 10. Используйте Монитор стабильности Windows

Многие пользователи даже не знают, что в Windows есть встроенный Монитор стабильности.

Он показывает историю всех сбоев системы.

Как открыть

  1. Нажмите Win + R.
  2. Введите:
perfmon /rel

Вы увидите календарь, в котором отмечены:

  • сбои программ;
  • ошибки Windows;
  • установка драйверов;
  • обновления;
  • критические ошибки.

Очень удобно искать момент, после которого появились DLL-ошибки.


Способ 11. Проверьте диск

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

Запустите проверку:

chkdsk C: /f

Если Windows предложит выполнить проверку после перезагрузки, согласитесь.

Когда CHKDSK особенно полезен

  • после аварийного отключения питания;
  • после зависания компьютера;
  • если DLL исчезают повторно;
  • если появляются ошибки чтения файлов.

  • Способ 12. Проверьте состояние SSD или HDD

    Если ошибка появляется снова через несколько дней после исправления, стоит проверить здоровье накопителя.

    Особенно обратите внимание на:

    • состояние SMART;
    • температуру;
    • переназначенные сектора;
    • неисправимые ошибки чтения.

    Если SMART показывает предупреждение, сначала сохраните важные данные.


    Почему нельзя скачивать DLL по одной

    На первый взгляд это кажется самым быстрым способом.

    Однако на практике возникают новые проблемы.

    Что делает пользователь Что происходит
    Скачивает DLL с неизвестного сайта Есть риск заражения компьютера
    Копирует DLL в System32 Ошибка остаётся
    Копирует DLL в папку программы Появляется новая ошибка
    Заменяет системную DLL Windows начинает работать нестабильно

    Запомните простое правило.

    DLL — это часть программы или компонента Windows.

    Исправляют не отдельный DLL-файл, а причину его отсутствия.


    Какому компоненту принадлежит DLL

    Следующая таблица поможет быстро определить, что именно нужно переустановить.

    DLL Что установить
    VCRUNTIME140.dll Microsoft Visual C++ 2015–2022
    VCRUNTIME140_1.dll Microsoft Visual C++ 2015–2022
    MSVCP140.dll Microsoft Visual C++ 2015–2022
    MSVCP120.dll Microsoft Visual C++ 2013
    MSVCR120.dll Microsoft Visual C++ 2013
    d3dx9_43.dll DirectX End-User Runtime
    XINPUT1_3.dll DirectX End-User Runtime
    XAudio2_7.dll DirectX End-User Runtime
    D3DCompiler_43.dll DirectX End-User Runtime
    api-ms-win-crt-runtime-l1-1-0.dll Microsoft Visual C++ Universal CRT
    libssl-3-x64.dll Переустановить программу, в состав которой входит OpenSSL
    libcrypto-3-x64.dll Переустановить программу
    SDL2.dll Переустановить игру или программу
    SDL3.dll Переустановить программу
    sqlite3.dll Переустановить программу
    glfw3.dll Переустановить программу
    libcurl.dll Переустановить программу
    zlib1.dll Переустановить программу
    avcodec-61.dll Переустановить программу (FFmpeg)
    avformat-61.dll Переустановить программу (FFmpeg)
    avutil-59.dll Переустановить программу (FFmpeg)
    swscale.dll Переустановить программу (FFmpeg)
    swresample.dll Переустановить программу (FFmpeg)
    tbb.dll Переустановить программу
    tbbmalloc.dll Переустановить программу

    Что делать, если ни один способ не помог

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

    Рекомендуем выполнить следующий чек-лист.

    Шаг Что проверить Зачем это делать
    1 Переустановить программу Восстанавливаются все файлы программы
    2 Установить Microsoft Visual C++ Исправляются ошибки библиотек Runtime
    3 Установить DirectX Runtime Восстанавливаются игровые библиотеки
    4 Запустить SFC Проверка системных файлов Windows
    5 Запустить DISM Восстановление хранилища компонентов
    6 Запустить CHKDSK Проверка файловой системы
    7 Проверить SMART накопителя Исключить неисправность SSD или HDD
    8 Проверить оперативную память Ошибки ОЗУ могут повреждать файлы

    Ошибка 0xc000007b и DLL-файлы

    Одной из самых распространённых ошибок при запуске игр и программ является:

    The application was unable to start correctly (0xc000007b)

    Во многих случаях эта ошибка связана именно с DLL.

    Наиболее частые причины:

    • смешение 32-битных и 64-битных библиотек;
    • повреждение Visual C++ Runtime;
    • неполная установка DirectX;
    • повреждение системных файлов Windows;
    • неправильно скопированные DLL вручную.

    Поэтому, если появляется код 0xc000007b, не начинайте с поиска отдельных DLL. Выполните действия, описанные в этой статье.


    Типичные ошибки пользователей

    Во время исправления DLL-ошибок пользователи часто совершают одни и те же действия, которые только усложняют поиск причины.

    Ошибка Почему это плохо
    Скачивание DLL с первого попавшегося сайта Можно получить вирус или неподходящую версию файла
    Копирование DLL в System32 вручную Не устраняет причину ошибки и может нарушить работу Windows
    Удаление старых Visual C++ Некоторые программы перестанут запускаться
    Установка только x64-версии Visual C++ 32-битные программы продолжат выдавать ошибки
    Игнорирование перезагрузки после установки компонентов Изменения могут не примениться
    Прерывание работы SFC или DISM Проверка не будет завершена

    Как избежать DLL-ошибок в будущем

    Полностью исключить вероятность появления DLL-ошибок невозможно, однако риск можно значительно снизить.

    • Устанавливайте программы только с официальных сайтов.
    • Не удаляйте установленные пакеты Microsoft Visual C++ Redistributable.
    • Не скачивайте отдельные DLL-файлы с неизвестных ресурсов.
    • Регулярно устанавливайте обновления Windows.
    • Следите за состоянием SSD или HDD.
    • Создавайте точки восстановления перед серьёзными изменениями системы.
    • Периодически выполняйте проверку системных файлов командой sfc /scannow.

    Часто задаваемые вопросы

    Можно ли скачать только отсутствующий DLL-файл?

    Не рекомендуется. Намного безопаснее установить программу или компонент, которому принадлежит эта библиотека.

    Почему DLL пропадает после перезагрузки?

    Возможные причины — повреждение файловой системы, работа вредоносной программы, неисправность накопителя или некорректная работа самой программы.

    Почему ошибка появляется только в одной игре?

    Скорее всего, отсутствует библиотека, которая входит в комплект именно этой игры или её установщик был повреждён.

    Нужно ли переустанавливать Windows?

    Нет. В большинстве случаев проблему удаётся устранить без переустановки системы.

    Можно ли удалить старые версии Visual C++?

    Нет. Разные программы используют разные версии библиотек Microsoft Visual C++ Redistributable.

    Почему DLL есть в папке, но программа её не видит?

    Файл может быть повреждён, иметь неправильную разрядность или зависеть от другой отсутствующей библиотеки.

    Почему антивирус удалил DLL?

    Иногда защитное ПО помещает библиотеку в карантин из-за ложного срабатывания. Проверьте журнал антивируса и убедитесь, что файл действительно относится к доверенной программе.

    Поможет ли восстановление системы?

    Да, если ошибка появилась после установки драйвера, программы или обновления Windows, а на компьютере есть точка восстановления.


    Заключение

    DLL-ошибки почти всегда можно исправить самостоятельно, если определить их настоящую причину. Не стоит начинать с поиска отдельных библиотек в интернете — в большинстве случаев проблема решается переустановкой программы, установкой Microsoft Visual C++ Redistributable или DirectX, а также проверкой системных файлов Windows.

    Если стандартные способы не помогли, используйте встроенные средства диагностики: SFC, DISM и CHKDSK. Они позволяют восстановить повреждённые компоненты операционной системы и устранить большинство распространённых причин появления DLL-ошибок.

    Если же ошибка связана с конкретным DLL-файлом, откройте соответствующую инструкцию на сайте. Для каждой популярной библиотеки подготовлено отдельное руководство с учётом особенностей именно этого файла и программ, которые его используют.

Войдите, чтобы ставить лайки и сохранять статьи Перейти в VK ↗
Обсуждение

Комментарии

Только для участников

Обсуждение доступно после входа

Авторизуйтесь через VK ID, чтобы читать комментарии, отвечать, ставить лайки и сохранять статьи.

Войти через VK ID