Как найти длл библиотеку

АйТи Спектр

Опубликовано 28.09.2022

Содержание:

  • 1 Библиотека DLL Windows
  • 2 Как найти и установить библиотеку DLL
    • 2.1 Регистрация dll-файла через командную строку
  • 3 Как установить библиотеку DLL сторонними инструментами
    • 3.1 DLL Helper
    • 3.2 Advanced PC Cleanup
    • 3.3 CCleaner
    • 3.4 Advanced System Optimizer
  • 4 Точка входа не найдена в библиотеке dll
  • 5 Заключение

Библиотека DLL Windows

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

Решить проблему с отсутствием dll достаточно просто — необходимо скачать подходящую библиотеку, разместить ее в правильной папке и зарегистрировать в Windows. Рассмотрим алгоритм действий.

Как найти и установить библиотеку DLL

Инсталляция и регистрация библиотеки производится согласно единому алгоритму вне зависимости от версии операционной системы. Перед скачиванием файлов необходимо определить разрядность Windows. Кликаем в Проводнике на «Этот компьютер» и выбираем «Свойства». К примеру, на скриншоте 64-разрядная Windows 10 Pro.

Параметры Windows

Скачиваем подходящие файлы, а затем перемещаем их в корневую папку. Для 32-разрядной ОС (x32) это директория C:WindowsSystem32, для 64-разрядной (x64) — C:Windows SysWOW64. Теперь библиотеки необходимо зарегистрировать в ОС. Используем для этого win+r, и в открывшейся строке введем regsvr32 имяфайла.dll.

Выполнить

Команда regsvr32 зарегистрирует элемент библиотеки имяфайла.dll. Подтверждаем OK, перезагружаем компьютер и продолжаем работу. Ошибка должна исчезнуть.

Регистрация dll-файла через командную строку

Запускаем командную консоль с админскими правами. Вводим regsvr32.exe C:/Windows/System32/имяфайла.dll и кликаем «Энтер».

Командная строка

Обязательно делаем перезагрузку компьютера.

Если после этого система сообщает, что не удается загрузить модуль, проверьте, правильно ли прописан путь к файлу, и лежит ли он в упомянутой выше корневой папке. Также dll-элемент может быть уже ранее зарегистрирован. Скачанные файлы сохраняйте в отдельной папке, возможно, они еще пригодятся. Используйте только актуальные библиотеки.

Если вдруг приложение либо игра не видит элемент dll, необходимо скопировать последний и вставить в директорию, где находится основной исполняемый exe-файл. После этого заново запускаем программу.

Как установить библиотеку DLL сторонними инструментами

Установить и зарегистрировать системные DLL возможно с помощью различных приложений, о которых речь пойдет ниже. Они способны автоматически найти недостающие библиотеки, проанализировать состояние ОС, проверить целостность реестра и создать резервные копии. При этом компоненты, связанные с .NET Framework, Visual C++ и DirectX, нужно скачивать с официальных сайтов, а конкретные ошибки в отдельных программах лучше решать с разработчиками проблемного ПО.

DLL Helper

DLL Helper — платный софт на русском языке. Обладает простым понятным интерфейсом и внушительным онлайн-хранилищем DLL-библиотек. Легко устанавливается. Для поиска нужных элементов достаточно знать их официальные наименования, данные им производителем. Программа работает в двух режимах: «Простой» (предлагает только актуальные версии) и «Продвинутый» (предлагает все доступные версии). Существует возможность отката ранее установленных DLL.

Advanced PC Cleanup

Advanced PC Cleanup позволяет удалить временные элементы, зарегистрировать недостающие dll-файлы, исправить другие проблемы. Программа быстро обнаруживает отсутствующие библиотеки и предлагает исправить записи в реестре, отображая весь перечень проблемных файлов, откуда пользователь может сам выбрать компоненты для восстановления. ПО работает на английском языке, в бесплатном варианте и премиум-версии.

CCleaner

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

Advanced System Optimizer

Advanced System Optimizer выполняет те же функции, что и CCleaner. Запустив проверку реестра, пользователь получает перечень поврежденных файлов, среди которых есть и недостающие либо незарегистрированные dll-библиотеки. Можно сразу  провести восстановление и избавиться от возникших проблем. Работает на русском языке и в бесплатном функционале позволяет выполнить поиск и исправление dll.

Есть и такие программы, как SpeedyPC Pro, SS Registry Fixer и т. д. Работают на русском и английском языках, являются бесплатными и условно-бесплатными, специализированными и общими утилитами. В последних главное — наличие функции исправления ошибок реестра, которая поможет найти и восстановить dll-библиотеки.

Точка входа не найдена в библиотеке dll

Иногда во время запуска программы либо игры компьютер выдает ошибку «Точка входа в процедуру не найдена в библиотеке DLL». Это означает, что нужный dll-файл не найден, поврежден или содержит ошибку в синтаксисе. Windows способна автоматически заменить отсутствующие или поврежденные системные элементы. Во всех остальных случаях решить проблему помогут нижеприведенные рекомендации.

  1. Скачайте и установите актуальную версию Visual C++ с официального сайта Microsoft. Запустите на своем компьютере обе вариации — и для 32-, и для 64-битной ОС.
  2. В командной строке с админскими правами используйте sfc /scannow. После ввода команды нажмите «Энтер». По окончании проверки системных файлов утилита сообщит о файлах, которые удалось либо не удалось восстановить.
  3. Возможно, ситуацию исправит переустановка проблемного софта.
  4. Перерегистрируйте dll-файл, открыв командную строку с админскими правами и используя команды «regsvr32/u a имяфайла.dll» и «regsvr32 a имя файла.dll» (без кавычек). После каждой команды щелкните «Энтер».
  5. Откатите операционную  систему назад с помощью win+r и команды rstrui.exe. Кликните OK, выберите нужную точку восстановления и запустите процесс. После перезагрузки система будет работать по состоянию на указанную дату.

Выполнить

Продвинутым пользователям, самостоятельно устанавливающим Windows, можно рекомендовать инструмент Media Creation Tool. Он решит ошибку, когда система сообщит, что точка процедуры не найдена в библиотеке dll. С помощью этой утилиты необходимо создать загрузочный образ «Виндовс» на сайте Microsoft и произвести инсталляцию ОС с установочной флешки. Этот способ поможет извлечь и применить недостающие dll-файлы.

Заключение

Если, несмотря на предложенные инструкции, вам не удалось найти и зарегистрировать недостающие или поврежденные dll-библиотеки, обратитесь к сотрудникам «АйТиСпектр». Специалисты наладят работу операционной системы, а заодно помогут решить проблемы с работой других компонентов компьютера.

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

Куда поместить dll

Инструкция

Файлы с расширением DLL размещены в специальной директории Windows, доступ к которой можно получить, перейдя в меню «Пуск» — «Компьютер» — «Локальный диск C:». В списке представленных директорий дважды кликните на папке Windows, а затем перейдите в каталог System32, где и находятся все файлы, необходимые для стабильного функционирования системы.

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

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

Если после переустановки программа по-прежнему не запускается или ошибка выскакивает в процессе использования самой утилиты, вам потребуется установить файл DLL вручную. Перейдите а сайт dll.ru или dllbase.com. В строке для поиска названия файла введите название библиотеки, на которую ссылается Windows при публикации ошибки. В результатах поиска нажмите на кнопку «Скачать» (Download) и дождитесь загрузки файла, введя защитный код для подтверждения.

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

Видео по теме

Обратите внимание

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

Источники:

  • Dllbase
  • Dll.ru

Войти на сайт

или

Забыли пароль?
Еще не зарегистрированы?

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Начало тут:
1. динамически подключаемые библиотеки;
2. о динамически подключаемых библиотеках подробнее;
3. преимущества динамического связывания;
4. создание динамически подключаемой библиотеки;
5. функция точки входа DLL;
6. динамическое связывание во время запуска;
7. динамическое связывание во время выполнения.

Перевод с английского статьи от 31.05.2018 г. «Dynamic-Link Library Search Order»:
https://docs.microsoft.com/ru-ru/windows/win32/dlls/dynamic-link-library-search-order
(На данный момент на этом сайте нет перевода этой статьи на русский, есть только версия на английском.)

[Операционная] система может содержать множество версий одной и той же динамически подключаемой библиотеки (DLL). Приложения могут контролировать местоположение, из которого DLL загружается, путем определения полного пути [к файлу DLL] или с помощью другого механизма, такого как манифест [файл на языке XML с информацией о приложении, в том числе может содержать информацию о необходимых приложению DLL]. Если эти методы не используются, система ищет DLL во время запуска программы так, как описано в этой статье.

Так как статья довольно длинная [и в ней много повторов, поэтому она довольно нудная], то вот ее содержание со ссылками на ее разделы (все они находятся на этой же странице):

  • факторы, влияющие на процесс поиска;
  • порядок поиска DLL для приложений «Windows Store»:
    • стандартный порядок поиска DLL для приложений «Windows Store»;
    • альтернативный порядок поиска DLL для приложений «Windows Store»;
  • порядок поиска DLL для приложений настольного компьютера:
    • стандартный порядок поиска DLL для приложений настольного компьютера;
    • альтернативный порядок поиска DLL для приложений настольного компьютера;
    • порядок поиска DLL с использованием флагов LOAD_LIBRARY_SEARCH.

Факторы, влияющие на процесс поиска

Следующие факторы влияют на то, будет ли система искать DLL:

  • если DLL с тем же самым именем модуля уже загружена в память, система проверит только [следует ли выполнить] перенаправление [перенаправление включается наличием в папке с исполняемым файлом приложения пустого файла с таким же именем, как у приложения, и расширением .local и указывает системе начать поиск DLL с папки, в которой находится этот файл .local] и манифест [на наличие указаний о местонахождении нужной DLL] и [при отсутствии перенаправления и манифеста] будет считать результатом поиска загруженную DLL, при этом не будет иметь значения, в каком каталоге эта загруженная DLL находится. Система не станет выполнять других действий по поиску DLL;
  • если DLL есть в списке библиотек DLL, известных той версии операционной системы Windows, в которой запущено приложение, система использует свою копию известной DLL (и свои копии библиотек DLL, от которых эта известная DLL зависит, если таковые имеются) вместо того, чтобы искать эту DLL. Увидеть список известных текущей системе DLL можно, обратившись к следующему ключу реестра: HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerKnownDLLs;
  • если DLL имеет зависимости [от других DLL], система будет искать библиотеки DLL, от которых зависит исходная, так, как если бы эти библиотеки загружались с указанием только имен их модулей. Это правило остается верным, даже если исходная DLL загружалась с указанием полного пути к ней.

Порядок поиска DLL для приложений «Windows Store»

Когда приложение «Windows Store» загружает упакованный модуль [DLL] посредством вызова функции LoadPackagedLibrary, DLL должна находиться в графе зависимостей пакета для процесса. Подробнее об этом читайте в описании функции LoadPackagedLibrary. Когда приложение «Windows Store» загружает модуль [DLL] другими средствами и не указывает полный путь к нему, система ищет DLL и ее зависимости [модули, от которых эта DLL зависит] во время запуска программы так, как описано в этом разделе.

Замечание для пользователей предыдущих по отношению к свежим на дату написания статьи версиям операционных систем Windows (Windows 7 (вики: с 22.10.2009 г.), Windows Server 2008 R2 (вики: с 22.10.2009 г.), Windows Vista (вики: с 30.11.2006 г.), Windows Server 2008 (вики: с 12.12.2008 г.), Windows Server 2003 (вики: с 24.04.2003 г.) и Windows XP (вики: с 24.08.2001 г.)): приложения «Windows Store» поддерживаются, начиная с операционных систем «Windows 8» (вики: с 26.10.2012 г.) и «Windows Server 2012» (вики: с 04.09.2012 г.).

Перед тем, как система запустит поиск DLL, она проверит следующее:

  • если DLL с таким же именем модуля уже загружена в память, система будет использовать загруженную DLL, при этом не будет иметь значения, в каком каталоге эта загруженная DLL находится. Система не станет выполнять других действий по поиску DLL;
  • если DLL есть в списке библиотек DLL, известных той версии операционной системы Windows, в которой запущено приложение, система использует свою копию известной DLL (и свои копии библиотек DLL, от которых эта известная DLL зависит, если таковые имеются) вместо того, чтобы искать эту DLL. Увидеть список известных текущей системе DLL можно, обратившись к следующему ключу реестра: HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerKnownDLLs.

Если система должна выполнить поиск модуля или его зависимостей [других модулей, от которых зависит работа исходного модуля], система всегда будет использовать порядок поиска, предназначенный для приложений «Windows Store», даже если искомая зависимость представляет из себя не код приложения «Windows Store».

Стандартный порядок поиска DLL для приложений «Windows Store»

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

  1. Граф зависимостей пакета для процесса. Местом поиска является пакет приложения плюс любые зависимости, отмеченные как <PackageDependency> в разделе <Dependencies> манифеста пакета приложения. Зависимости ищутся системой в том порядке, в котором они появляются в манифесте;
  2. Каталог, из которого был загружен вызывающий DLL процесс;
  3. Системный каталог (%SystemRoot%system32).

Если DLL имеет зависимости [от других DLL], система будет искать библиотеки DLL, от которых зависит исходная, так, как если бы эти библиотеки загружались с указанием только имен их модулей. Это правило остается верным, даже если исходная DLL загружалась с указанием полного пути к ней.

Альтернативный порядок поиска DLL для приложений «Windows Store»

Если модуль меняет стандартный порядок поиска DLL посредством вызова функции LoadLibraryEx с флагом LOAD_WITH_ALTERED_SEARCH_PATH, система ищет в каталоге, из которого указанный [в параметре функции LoadLibraryEx] модуль был загружен, вместо каталога вызывающего процесса. Система выполняет поиск в следующих местах в указанном ниже порядке:

  1. Граф зависимостей пакета для процесса. Местом поиска является пакет приложения плюс любые зависимости, отмеченные как <PackageDependency> в разделе <Dependencies> манифеста пакета приложения. Зависимости ищутся системой в том порядке, в котором они появляются в манифесте;
  2. Каталог, из которого указанный [в параметре функции LoadLibraryEx] модуль был загружен;
  3. Системный каталог (%SystemRoot%system32).

Порядок поиска DLL для приложений настольного компьютера

Приложения настольного компьютера [desktop applications] могут указывать место, из которого будет загружена DLL, посредством указания полного пути к DLL, могут использовать перенаправление поиска DLL, либо могут использовать манифест. Если ни один из этих методов не используется, система ищет DLL во время загрузки программы так, как описано в этом разделе.

Перед тем, как система запустит поиск DLL, она проверит следующее:

  • если DLL с таким же именем модуля уже загружена в память, система будет использовать загруженную DLL, при этом не будет иметь значения, в каком каталоге эта загруженная DLL находится. Система не станет выполнять других действий по поиску DLL;
  • если DLL есть в списке библиотек DLL, известных той версии операционной системы Windows, в которой запущено приложение, система использует свою копию известной DLL (и свои копии библиотек DLL, от которых эта известная DLL зависит, если таковые имеются) вместо того, чтобы искать эту DLL. Увидеть список известных текущей системе DLL можно, обратившись к следующему ключу реестра: HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerKnownDLLs.

Если DLL имеет зависимости [от других DLL], система будет искать библиотеки DLL, от которых зависит исходная, так, как если бы эти библиотеки загружались с указанием только имен их модулей. Это правило остается верным, даже если исходная DLL загружалась с указанием полного пути к ней.

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

Стандартный порядок поиска DLL для приложений настольного компьютера

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

Безопасный режим поиска DLL по умолчанию включен. Чтобы его выключить, следует создать в реестре параметр HKEY_LOCAL_MACHINESystemCurrentControlSetControlSession ManagerSafeDllSearchMode и установить его значение в 0 (ноль). Вызов функции SetDllDirectory при ее успешном завершении отключает параметр реестра SafeDllSearchMode, в то время как указанный [в параметре функции SetDllDirectory] каталог находится в поисковом списке каталогов и изменяет порядок поиска так, как описано [далее] в этой статье.

Замечание для пользователей операционной системы Windows XP (вики: с 24.08.2001 г.; поддержка этой системы прекращена корпорацией «Microsoft» c 08.04.2014 г.): безопасный режим поиска DLL по умолчанию выключен. Чтобы включить его, следует создать параметр реестра SafeDllSearchMode и установить его значение в 1. Безопасный режим поиска DLL включен по умолчанию, начиная с «Windows XP» с установленным пакетом обновления SP2.

Если параметр реестра SafeDllSearchMode включен, порядок поиска DLL будет следующим:

  1. Каталог, из которого загружено приложение;
  2. Системный каталог [обычно это каталог ..WindowsSystem32, но не всегда]. Используйте функцию GetSystemDirectory, чтобы получить путь к этому каталогу;
  3. Системный каталог для 16-разрядных библиотек DLL [обычно это каталог ..WindowsSystem, но не всегда]. Не существует функции [из набора Windows API], которая получала бы путь к этому каталогу, но поиск в этом каталоге всё равно выполняется;
  4. Каталог операционной системы Windows [обычно это каталог ..Windows, но не всегда]. Используйте функцию GetWindowsDirectory, чтобы получить путь к этому каталогу;
  5. Текущий каталог;
  6. Каталоги, перечисленные в переменной среды PATH. Заметим, что эта переменная не включает путь, определенный в разрезе каждого приложения ключом реестра App Paths [HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionApp Paths]. Ключ реестра App Paths не используется при поиске DLL.

Если параметр реестра SafeDllSearchMode выключен, порядок поиска DLL будет следующим:

  1. Каталог, из которого загружено приложение;
  2. Текущий каталог;
  3. Системный каталог [обычно это каталог ..WindowsSystem32, но не всегда]. Используйте функцию GetSystemDirectory, чтобы получить путь к этому каталогу;
  4. Системный каталог для 16-разрядных библиотек DLL [обычно это каталог ..WindowsSystem, но не всегда]. Не существует функции [из набора Windows API], которая получала бы путь к этому каталогу, но поиск в этом каталоге всё равно выполняется;
  5. Каталог операционной системы Windows [обычно это каталог ..Windows, но не всегда]. Используйте функцию GetWindowsDirectory, чтобы получить путь к этому каталогу;
  6. Каталоги, перечисленные в переменной среды PATH. Заметим, что эта переменная не включает путь, определенный в разрезе каждого приложения ключом реестра App Paths [HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionApp Paths]. Ключ реестра App Paths не используется при поиске DLL.

Альтернативный порядок поиска DLL для приложений настольного компьютера

Стандартный порядок поиска DLL, используемый системой, может быть изменен с помощью вызова функции LoadLibraryEx с флагом LOAD_WITH_ALTERED_SEARCH_PATH. Стандартный порядок поиска DLL также может быть изменен с помощью вызова функции SetDllDirectory.

Замечание: стандартный порядок поиска DLL для процесса попадет под влияние вызова функции SetDllDirectory в родительском процессе, если этот вызов был выполнен до запуска текущего процесса.

Замечание для пользователей операционной системы Windows XP (вики: с 24.08.2001 г.; поддержка этой системы прекращена корпорацией «Microsoft» c 08.04.2014 г.): изменение стандартного порядка поиска DLL с помощью вызова функции SetDllDirectory не поддерживалось до «Windows XP» с установленным пакетом обновления SP1.

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

Функция LoadLibraryEx поддерживает альтернативный порядок поиска DLL, если она вызывается с флагом LOAD_WITH_ALTERED_SEARCH_PATH и в ее параметре lpFileName указан абсолютный путь.

Заметим, что стратегия стандартного порядка поиска DLL и стратегия альтернативного порядка поиска DLL, установленная функцией LoadLibraryEx с флагом LOAD_WITH_ALTERED_SEARCH_PATH, различаются только в одном: стандартный порядок поиска DLL начинается с каталога вызывающего приложения, а альтернативный порядок поиска DLL начинается с каталога исполняемого модуля, загружаемого функцией LoadLibraryEx.

Если параметр реестра SafeDllSearchMode включен, альтернативный порядок поиска DLL будет следующим:

  1. Каталог, определенный параметром lpFileName функции LoadLibraryEx;
  2. Системный каталог [обычно это каталог ..WindowsSystem32, но не всегда]. Используйте функцию GetSystemDirectory, чтобы получить путь к этому каталогу;
  3. Системный каталог для 16-разрядных библиотек DLL [обычно это каталог ..WindowsSystem, но не всегда]. Не существует функции [из набора Windows API], которая получала бы путь к этому каталогу, но поиск в этом каталоге всё равно выполняется;
  4. Каталог операционной системы Windows [обычно это каталог ..Windows, но не всегда]. Используйте функцию GetWindowsDirectory, чтобы получить путь к этому каталогу;
  5. Текущий каталог;
  6. Каталоги, перечисленные в переменной среды PATH. Заметим, что эта переменная не включает путь, определенный в разрезе каждого приложения ключом реестра App Paths [HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionApp Paths]. Ключ реестра App Paths не используется при поиске DLL.

Если параметр реестра SafeDllSearchMode выключен, альтернативный порядок поиска DLL будет следующим:

  1. Каталог, определенный параметром lpFileName функции LoadLibraryEx;
  2. Текущий каталог;
  3. Системный каталог [обычно это каталог ..WindowsSystem32, но не всегда]. Используйте функцию GetSystemDirectory, чтобы получить путь к этому каталогу;
  4. Системный каталог для 16-разрядных библиотек DLL [обычно это каталог ..WindowsSystem, но не всегда]. Не существует функции [из набора Windows API], которая получала бы путь к этому каталогу, но поиск в этом каталоге всё равно выполняется;
  5. Каталог операционной системы Windows [обычно это каталог ..Windows, но не всегда]. Используйте функцию GetWindowsDirectory, чтобы получить путь к этому каталогу;
  6. Каталоги, перечисленные в переменной среды PATH. Заметим, что эта переменная не включает путь, определенный в разрезе каждого приложения ключом реестра App Paths [HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionApp Paths]. Ключ реестра App Paths не используется при поиске DLL.

Функция SetDllDirectory поддерживает альтернативный порядок поиска DLL, если в ее параметре lpPathName указан путь. В этом случае альтернативный порядок поиска DLL будет следующим:

  1. Каталог, из которого загружено приложение;
  2. Каталог, указанный в параметре lpPathName функции SetDllDirectory;
  3. Системный каталог [обычно это каталог ..WindowsSystem32, но не всегда]. Используйте функцию GetSystemDirectory, чтобы получить путь к этому каталогу;
  4. Системный каталог для 16-разрядных библиотек DLL [обычно это каталог ..WindowsSystem, но не всегда]. Не существует функции [из набора Windows API], которая получала бы путь к этому каталогу, но поиск в этом каталоге всё равно выполняется;
  5. Каталог операционной системы Windows [обычно это каталог ..Windows, но не всегда]. Используйте функцию GetWindowsDirectory, чтобы получить путь к этому каталогу;
  6. Каталоги, перечисленные в переменной среды PATH. Заметим, что эта переменная не включает путь, определенный в разрезе каждого приложения ключом реестра App Paths [HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionApp Paths]. Ключ реестра App Paths не используется при поиске DLL.

Если в параметр lpPathName функции SetDllDirectory передана пустая строка, эта функция удаляет текущий каталог из поискового списка каталогов.

Функция SetDllDirectory в случае своей успешной отработки выключает безопасный режим поиска DLL, а указанный в ее параметре каталог включается в поисковый список каталогов. Чтобы восстановить безопасный режим поиска DLL, основанный на параметре реестра SafeDllSearchMode, и вернуть текущий каталог в поисковый список каталогов, следует вызвать функцию SetDllDirectory с ее параметром lpPathName, установленным в значение NULL.

Порядок поиска DLL с использованием флагов LOAD_LIBRARY_SEARCH

Приложение может определить порядок поиска DLL, используя один или более флагов LOAD_LIBRARY_SEARCH функции LoadLibraryEx. Приложение также может использовать флаги LOAD_LIBRARY_SEARCH в качестве параметра функции SetDefaultDllDirectories, чтобы настроить порядок поиска DLL для процесса. Приложение может задать дополнительные каталоги для настройки порядка поиска DLL, нужных процессу, с помощью функций AddDllDirectory или SetDllDirectory.

Замечание для пользователей предыдущих по отношению к свежим на дату написания статьи версиям операционных систем Windows (Windows 7 (вики: с 22.10.2009 г.), Windows Server 2008 R2 (вики: с 22.10.2009 г.), Windows Vista (вики: с 30.11.2006 г.), Windows Server 2008 (вики: с 12.12.2008 г.)): флаги LOAD_LIBRARY_SEARCH доступны на этих системах, если установлено обновление KB2533623.

Замечание для пользователей операционных систем Windows Server 2003 (вики: с 24.04.2003 г.) и Windows XP (вики: с 24.08.2001 г.): флаги LOAD_LIBRARY_SEARCH в этих системах не поддерживаются.

В каких именно каталогах происходит поиск DLL, зависит от флагов, указанных при вызове функций SetDefaultDllDirectories или LoadLibraryEx. Если используется более, чем один флаг, соответствующие каталоги обыскиваются в следующем порядке:

  1. Каталог, содержащий DLL (флаг LOAD_LIBRARY_SEARCH_DLL_LOAD_DIR). В этом каталоге ищутся только DLL, от которых зависит загружаемая DLL;
  2. Каталог приложения (флаг LOAD_LIBRARY_SEARCH_APPLICATION_DIR);
  3. Пути, явно добавленные с помощью функции AddDllDirectory (флаг LOAD_LIBRARY_SEARCH_USER_DIRS) или функции SetDllDirectory. Если был добавлен больше, чем один путь, порядок, в котором эти пути обыскиваются, является неопределенным;
  4. Системный каталог (флаг LOAD_LIBRARY_SEARCH_SYSTEM32).

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

DLL, short for Dynamic Link Library, is a type of essential file that contains a set of instructions used for running almost every program in Windows 10, Windows 8, and Windows 7. If the DLL files are missing from Windows operating system, you may not be able to run the programs or applications you need.

One of the most popular missing DLL files errors on Windows 10 is the MSCVP110.dll issue with an error message ‘The program can’t start because MSVCP110.dll is missing from your computer. Try reinstalling the program to fix this problem’.  

missing dll files windows 10

In this article, we’re going to show you how to fix missing DLL files in Windows 10 in a few effective solutions. First, let’s see what caused the missing DLL files on Windows 10/8/7.

Causes of Missing DLL Files Windows 10

Before we move right into the solution, it would be great to have a proper understanding of the cause of the missing .dll file error. 

  • Virus or malware attack
  • careless deletion of DLL files
  • Corrupted Windows operating system
  • DLL files are overwritten
  • DLL files are damaged
  • Different functions between Windows 10 and Windows 8/7 

There are many ways to fix missing DLL files on your Windows computer. When a missing .dll file issue occurs, you can try restarting your computer at first to see if the problem is resolved. If not, take the following methods in order.

1. Reinstall the Program 

As the error message suggests, you can try reinstalling the program to fix the missing .dll issue. If this way doesn’t work, move to the next approach.

2. Run System File Checker Scanner

As the corrupted Windows operating system may result in the missing .dll error, you can repair the corrupted system file to troubleshoot.

Run the Windows in-built System File Checker to help you detect and replace lost or corrupted files in your operating system. This tool can also be used to detect crucial missing DLL files on Windows 10.

Related reading: SFC is not working on Windows 10

Step 1. Right-click the «Start» button and select «Command Prompt (Admin)».

Step 2. Type sfc /scannow and press Enter to run a full system scan.

run SFC to fix Windows has detected file system corruption

Wait for the process to finish. If the SFC scanner found the missing DLL file, then the problem is solved. If you see this message: Windows Resource Protection did not find any integrity violations, it means there is nothing wrong with the Windows system files. You need to jump to the next solution.

3. Run DISM Tool

If the SFC scanner is not useful, fix DLL file missing problem with DISM (Deployment Image & Servicing Management) tool.

Step 1. Press Win + R to open Run dialog and type: cmd to open «Command Prompt».

Step 2. Type the following command and hit «Enter».

Dism /Online /Cleanup-Image /RestoreHealth 

fix sfc cannot repair with DSIM

Step 3. Wait for the process to complete. Then, restart your computer.

4. Recover Deleted DLL Files with a File Recovery Tool

Sometimes, you might have accidentally deleted the DLL files. In this case, the missing .dll file error arises. Search your Recycle Bin and restore the deleted files. If the DLL file is not in the Recycle Bin or you have emptied it, you can recover deleted files with EaseUS Data Recovery Wizard.

EaseUS Data Recovery Wizard allows you to restore any lost files from HDD, SSD, USB flash drive, SD card, external hard drive, etc.

What’s more, it can repair corrupted files after recovery. Free download this file recovery program to get back your missing DLL files.

Step 1. Choose the exact file location and then click the «Scan» button to continue.

select the location to scan for deleted files

Step 2. After the process, select the «Deleted Files» and «Other Lost Files» folders in the left panel. Then, you can apply the «Filter» feature or click the «Search files or folders» button to find the deleted files.

check the results

Step 3. Click the «Recover» button and save the restored files – ideally, it should be different from the original one.

recover deleted files

5. Download the DLL File Manually

If the above methods can’t help to solve the problem with a missing DLL, you can download missing DLL files from the internet.

However, many sites offer free DLL files online, but only a few are trustworthy. Some harmful web pages may have malware that can infect your entire system. So, be sure to download DLL files through the official Microsoft links provided.

If you don’t like downloading the missing DLL files online, you can try copying them from another working PC.

6. Upgrade Windows

Some Windows updates can change or replace .dll files so that they will not be available when other programs need to use them. You can update Windows 10 to the latest version and check if this missing DLL file error.

Step 1. Press Windows + I to open Windows Settings.

Step 2. Click «Update & Security» and select «Check for updates» under Windows Update.

check for windows update

Step 3. If there a new Windows update available, click «Install Now» and follow the instructions to install the recent update.

More Information About Missing DLL Files Windows 10

Here is some additional knowledge of the DLL file on Windows 10.

Where are the DLL files located in Windows 10?

DLLs are located all over your PC, and they are not just in one location. You can find them in C:WindowsSystem32, or in your program files folder, or in other places.

You can search your computer for a .dll file:

  • Click the search button on your computer.
  • Enter the filename without the .dll extension into the search bar.
  • Check if the DLL file can be found.

How do I install missing DLL files?

Here’s how you can find and install missing .dll files on Windows 10.

  • Find and download your missing .dll file from a reliable site.
  • Download the .dll file to: «C:WindowsSystem32».
  • Press Windows + R to start the Run tool. Type regsvr32 name_of_dll. dll and hit Enter. Then, the .dll file should be installed on your Windows.

What happens if DLL files are missing?

If the DLL file required by a program is missing from your computer, you will not be able to run the program, and you will receive an error message. 

Concluding Words

In this post, we have shown you what DLL is, what causes the missing DLL files issue, and the 6 most useful solutions to fix missing DLL file errors. Now, it’s your turn to try these methods to resolve the problem.

If the .dll files are missing due to unintentional deletion, you can use EaseUS data recovery software to restore the files with ease. If you have any questions in addressing the problem, you can contact our technical support team for help. Email to [email protected].

Установка и регистрация библиотек DLL в Windows

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

Вне зависимости от того, какой программой и для чего используется dll-файл, установка и регистрация библиотеки всегда будет происходить по одному алгоритму. Все версии ОС Windows руководствуются одними правилами при подключении и регистрации динамических библиотек.

Пошаговая инструкция:

Как и куда копировать DLL файл

Ошибки с динамическими библиотеками DLL возникают по разным причинам: файл поврежден, несовместим с Windows или конкретной программой, заражен вирусами или удален. Решение всегда одно: загрузить корректную и полную версию библиотеки, после чего зарегистрировать файл в системе через командную строку. Обычно, весь процесс занимает не более 2-5 минут.

Сюда можно поместить (разархивировать и копировать) любые библиотеки dll, и установленные файлы будут работать:

  • Для Windows 95/98/Me — файл копируется в папку C:WindowsSystem
  • Для Windows NT/2000 — файл копируется в папку C:WINNTSystem32
  • Для Windows XP, Vista, 7, 8 — копировать в папку C:WindowsSystem32
  • Для 64-разрядных Windows — копировать dll файл в папку C:WindowsSysWOW64

Где можно загрузить нужную библиотеку:

  • Если это игра или программа: с другой сборкой игры, с другого ПК, на котором приложение работает, с диска (переустановить программу).
  • Если это системная библиотека, проверьте актуальность драйверов, DirectX или иного компонента, если система пишет, в каком файле или программе допущена ошибка. Копировать dll можно с другого компьютера с аналогичной версией разрядностью и версией Windows (7, 8, 10). Ошибка может вызываться не самой библиотекой, но и программой, её использующей.
  • Всегда можно загрузить нужную версию файла с архивов dll вроде dll.ru или ru.dll-files.com. Внимательно проверяйте, для какой версии ОС предназначена библиотека. Также следует внимательно смотреть, что скачивается: вместо нужной библиотеки многие сайты пытаются подсунуть свой платный софт для исправления ошибок с DLL.
  • Попробуйте найти статью с решением проблем про нужный файл в разделе DLL, либо воспользуйтесь поиском по сайту.

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

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

Для проверки разрядности системы нужно нажать правой кнопкой мыши на иконке «Мой компьютер» и выбрать пункт «Свойства». В открывшейся папке в разделе Система будет написано: «Тип системы: 64-разрядная операционная система, процессор x64».

Регистрация библиотеки в Windows

Проще всего зарегистрировать библиотеку DLL в Windows через командную строку или окно «Выполнить». Для открытия командной строки нужно: нажать Пуск -> Выполнить или комбинацию клавиш Win+R, ввести cmd.exe и нажать Enter. Можно ввести команду прямо в это поле, не открывая командной строки.

Для регистрации библиотеки нужно написать команду regsvr32 имяфайла.dll и нажать Enter. К примеру, regsvr32.exe msvcp110.dll.

Для того, чтобы изменения вступили в силу и библиотека начала работать, необходимо перезагрузить компьютер. Если Windows не хочет находить требуемый файл, можно указать полный путь: regsvr32.exe полный_путь_к_файлу.dll, например regsvr32.exe C:/Windows/System32/msvcp110.dll.

Как установить библиотеку DLL в систему Windows

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

Варианты установки

Установить библиотеку в систему можно различными способами. Есть специальные программы для выполнения данной операции, а также можно сделать это вручную. Проще говоря, в этой статье будет дан ответ на вопрос — «Куда кидать dll файлы?» после их скачивания. Рассмотрим каждый вариант по отдельности.

Способ 1: DLL Suite

DLL Suite — это программа, которая может сама отыскать нужный вам файл в интернете и установить его в систему.

Для этого потребуется выполнить следующие действия:

  1. Выбрать в меню программы пункт «Загрузить DLL».
  2. Ввести в строку поиска имя нужного файла и нажать на кнопку «Поиск».
  3. В результатах поиска выбрать подходящий вариант.

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

  • Указать место для сохранения и нажать кнопку «OK».
  • Все, в случае успешной загрузки, программа обозначит загруженный файл зеленой отметкой.

    Способ 2: DLL-Files.com Client

    DLL-Files.com Client во многом похожа на рассмотренную выше программу, но имеет некоторые отличия.

    Для установки библиотеки здесь нужно произвести следующие действия:

    1. Ввести имя искомого файла.
    2. Нажать на кнопку «Выполните поиск DLL файла».

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

  • В открывшемся новом окне нажать на кнопку «Установить».
  • Все, ваша DLL библиотека скопирована в систему.

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

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

    1. Задаете путь, по которому будет выполнена установка.
    2. Нажимаете на кнопку «Установить сейчас».

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

    Способ 3: Средства системы

    Можно установить библиотеку вручную. Для этого нужно будет скачать сам файл DLL и впоследствии просто скопировать или переместить его в папку по адресу:

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

    Но если вы имеете дело с операционными системами Windows 95/98/Me, то путь для установки будет таким:

    В случае Windows NT/2000:

    64-разрядные системы могут потребовать свой путь для установки:

    Отблагодарите автора, поделитесь статьей в социальных сетях.

    Как установить DLL файлы и вообще где взять недостающую библиотеку??

    Эта статья для тех, кто получает от своего компьютера сообщения об отсутствии или повреждении динамических библиотек. Не знаете, что это? Тогда вы можете сначала ознакомиться с другой публикацией моего блога, где описана вся их важность. Так вот, чтобы решить упомянутую проблему, следует знать, как установить DLL файлы. Об этом я собираюсь вам сейчас поведать.

    Алгоритм действий

    Когда вы пытаетесь открыть то или иное программное обеспечение, всплывает ошибка, что не найден DLL файл? В таком случае вам необходимо:

    1. Выписать название проблемного файла.
    2. Теперь соответственно его нужно скачать. Желательно выбрать для этого проверенный источник, например, https://www.dll-files.com/ .
    3. Собственно, скачать недостающий компонент.

      Заметьте, он должен соответствовать разрядности вашей операционной системы. Не знаете, какая у вас? Щёлкните правой кнопкой мыши по значку «Мой компьютер» или аналогичному разделу в меню «Пуск», откройте «Свойства», а затем — «Тип системы».
    4. Если загрузка выполнена архивом, распакуйте его.
    5. Вы пользуетесь 32-битной ОС? Поместите необходимый файл в папку C:WindowsSystem32. Если разрядность 64 бита — в C:WindowsSysWOW64.
    6. Возможно, при выполнении предыдущего действия всплывёт сообщение, мол, такой файл уже есть. Почему тогда не открывается ПО? Это может значить, что имеющийся у вас компонент устарел, повредился или вовсе является замаскированным вирусом. Так что заменяйте его новым вариантом.
    7. Перезагрузите компьютер.

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

    Регистрация DLL библиотеки

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

    Через окно «Выполнить»

    Знаете, как вызывается данное окошко? Если нет, то необходимо зажать на клавиатуре Win + R.

    В него следует вписать команду regsvr32.exe вместе с названием скачанного файла, то есть тем, которое вы запоминали на первом шаге предыдущей инструкции.

    Итог должен получиться примерно таким, как на картинке.

    Не получилось? Попробуйте указать полный путь к файлу — вместе с расположением в папке, куда вы его забросили. Не забудьте подтвердить действие кнопкой «ОК».

    С помощью командной строки

    Альтернативный вариант — выполнить то же самое, только в командной строке:

    • Запустите её от имени администратора через меню правой клавиши мыши;
    • Впишите ту же команду и адрес к файлу полностью;
    • Нажмите Enter.

    В завершение любого из способов вы должны получить сообщение об успешной регистрации.

    Вместо этого вам в очередной раз указано на ошибку? У меня найдётся ответ и на это.

    Причины и устранение ошибок

    Результатом регистрации может стать ошибка, извещающая, что модуль добавляемого вами файла уже загружен или несовместим с версией Виндовс. Такое может произойти по нескольким причинам:

    1. Библиотека не нуждается в регистрации, так как не предполагает такую функцию.
    2. Система её уже зарегистрировала.
    3. Вы скачали битый или неподходящий файл.

    Что я могу посоветовать? Загрузить библиотеку с другого ресурса (например с этого: https://www.dll.ru ) и заново установить её.

    На этом прощаюсь с вами и тему о том, как установить dll файлы заканчиваю. Надеюсь мои советы вам помогли.

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

    Как установить DLL файлы на Windows?

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

    Как установить DLL файл

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

    Помещение и регистрация файлов библиотеки

    Перед тем как установить DLL файл на Windows 7,8,10, их нужно скачать, причем точно под разрядность системы.

    Давайте определим, какая разрядность у Вашей системы (если вы точно знаете, может пропустить этот шаг)

    Шаг 1. Кликаем правой кнопкой мыши по “Мой компьютер” и выбираем “Свойства”

    Шаг 2. В открывшемся окне, мы может прочитать свойства компьютера, версию операционной системы и её разрядность 32 (х86) или 64 бит. В нашем случаи стоит 64-разрядная операционная система Windows 10.

    ·

    Шаг 3. После скачивания файлов их нужно поместить в корневую папку, зарегистрировать

    для х32 (х86) систем компонент необходимо заменить или поместить в папку C:WindowsSystem32;

    для х64 необходимо выполнить замену или переместить в папку C:Windows SysWOW64;

    Шаг 4. Файл нужно зарегистрировать в системе.

    Сделать это можно, открыв командную строку комбинацией «Win» + «R», или нажать «Пуск» и «Выполнить»;

    в открывшемся окне ввести через пробел следующее: regsvr32 имя файла.dll – где, «regsvr32» ─ команда для регистрации, а «имя файла.dll» – полное имя вставленного компонента;

    или же можно прописать расположение файла вручную – regsvr32.exe + путь к файлу

    Шаг 5. Нажмите “ОК”, и перезагрузите компьютер, и новые параметры вступят в силу.

    Сразу хочется отметить, что при регистрации возможны появления ошибок. Например: “Не удалось загрузить модуль”. Обычно они возникают по 3 причинам

    1. Не правильно прописан путь к файлу, или файл не был перемещен в каталог System32 или SysWOW64
    2. Не все файлы DLL вообще нуждаются в регистрации, иногда достаточно просто скопировать их в каталок System32 или SysWOW64 или поместить в корень проблемной игры или программы
    3. Файлы уже были зарегистрированы ранее

    Второй способ регистрации

    Шаг 1. Зарегистрировать файл можно с помощью командой строки, которую нужно запустить от имени администратора.

    Шаг 2. Пишем команду regsvr32.exe + путь к файлу и жмём “Enter”

    Шаг 3. Появится сообщение что “Всё прошло удачно”, и просто перезагружаем компьютер

    Вот и всё, файл зарегистрирован, можете пробовать запускать вашу игру или программу

    А вот, некоторые советы, которые могут вам пригодиться.

    • Помещайте элементы только в указанную папку (возможно, она будет скрыта по умолчанию). Вам нужно убрать галочку «Не показывать скрытые папки» в настройках отображения.
    • Если при замене файла требуется разрешение администратора – подтвердите действие.
    • Выбирайте только актуальные файлы на момент загрузки и сохраните их себе в компьютер отдельно. Вам они могут еще пригодиться. В случае если проблема образуется вновь, вы быстро восстановите работоспособность системы.

    Понравилась статья? Поделить с друзьями:
  • Как найти тангенс угла aob по клеткам
  • Как найти площадь камня
  • Как найти по фото яндекс в мобильной
  • Как исправить отстаю
  • Как составить справку 3 ндфл на продажу машины