Установка и регистрация библиотек DLL в Windows. Что такое драйвер устройства? Отладка резидентной в памяти программы

Настройка Bluetooth 29.10.2020
Настройка Bluetooth

После установки различных программ или игр можно столкнуться с ситуацией, когда при включении возникает ошибка «Запуск программы произвести невозможно, так как требуемой DLL нет в системе». Несмотря на то, что ОС семейства Windows обычно регистрируют библиотеки в фоновом режиме, после того, как вы скачаете и поместите ваш DLL файл в соответствующее место, ошибка все равно возникает, и система просто его «не видит». Чтобы это исправить, нужно зарегистрировать библиотеку. Как это можно сделать, будет рассказано далее в этой статье.

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

Способ 1: OCX/DLL Manager

OCX/DLL Manager – это маленькая программа которая может помочь зарегистрировать библиотеку или файл OCX.

Для этого вам нужно будет:

  1. Нажать на пункт меню «Register OCX/DLL» .
  2. Выбрать тип файла, который будете регистрировать.
  3. При помощи кнопки «Browse» указать местоположение DLL.
  4. Нажать на кнопку «Register» и программа сама зарегистрирует файл.

OCX/DLL Manager также умеет отменять регистрацию библиотеки, для этого понадобится выбрать в меню пункт «Unregister OCX/DLL» и в последствии проделать все те же операции, как и в первом случае. Функция отмены может вам понадобиться для сравнения результатов при активированном файле и при отключенном, а также в процессе удаления некоторых компьютерных вирусов.

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

Способ 2: Меню «Выполнить»

Можно зарегистрировать DLL, используя команду «Выполнить» в стартовом меню операционной системы Windows. Для этого нужно будет произвести следующие действия:


Способ 3: Командная строка

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

  1. Выберите команду «Выполнить» в меню «Пуск» .
  2. Впишите в открывшемся поле для ввода cmd .
  3. Нажмите «Enter» .

Перед вами появится окно, в котором нужно будет вводить те же команды, что и во втором варианте.

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

Способ 4: Открыть с помощью


Возможные ошибки

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

«Точка входа не найдена» — не все библиотеки DLL можно зарегистрировать, некоторые из них просто не поддерживают команду DllRegisterServer. Также, возникновение ошибки может быть вызвано тем, что файл уже зарегистрирован системой. Существуют сайты, распространяющие файлы, которые в реальности не являются библиотеками. В таком случае, естественно, зарегистрировать ничего не выйдет.

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

Универсальное решения для большинства ошибок вида “Запуск программы невозможен, так как на компьютере отсутствует XXXXX.dll. Попробуйте переустановить программу”

На текущий момент в статье имеется решение для следующих DLL:

Решение подходит для Windows 10, Windows 7, 8, XP и т.д. и состоит из четырех шагов:

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

  • Некорректное обновление Windows
  • Проблема с жестким диском, которая могла повлечь повреждение файла, сюда же можно отнести и вирусы
  • Удаление игр и программ, которые вместе с собой удаляют и системные файлы
  • Установка “дополнений” к Windows из не проверенных источников

Причём вариантов не найденных библиотек масса, а варианты решения для всех отсутствующих библиотек одинаковы:

  1. Переустановить по новой необходимый пакет (дистрибутив, патч и т.п.), частью которого приходится пропавшая DLL
  2. Переписать только не достающий файл и переписать его в систему

И первое и второе можно найти ниже в статье.

Шаг 1. Определяем разрядность Вашей операционной системы

Для этого необходимо нажать правую кнопку мыши на иконке “Компьютер ” и выбрать свойства, либо нажать на сочетание клавиш + Pause Break


Может быть два варианта либо x32 либо x64 . В нашем случае это 32-разрядная система. Запомните Ваше значение, так как в дальнейшем от этого зависит выбор вариантов загрузки файлов.

Шаг 2. Скачиваем необходимые файлы

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

Выбирайте для загрузки файлы с Вашей разрядностью системы. Для тех у кого 64-х битная версия, желательно скачать и 32 и 64 версии, но очень важно их не перепутать, можно временно переименовать файлы добавив к ним цифры разрядности.

Почему нужно переписать оба файла? Дело в приложении, которое у Вас не запускается, оно может быть как x32 так и x64, и чтобы оно наверняка запустилось скачиваем оба.

api-ms-win-crt-runtime-l1-1-0.dll

2. Весь пакет Microsoft Visual C++ Redistributable для Visual Studio 2015 с нашего сайта для полной переустановки:

3. Только необходимые файлы

Является частью пакета Microsoft Visual C++ Redistributable для Visual Studio 2015 . необходим для запуска приложений написанных с использованием Visual Studio 2015

2. Только необходимые файлы

Является частью пакета NVIDIA PhysX отвечающей за реалистичную физику в играх, таких как NFS Shift, Metro 2033 и других

1. Весь пакет с нашего сайта для полной переустановки:

2. Только необходимый файл

Содержится в OpenAL – это кросс платформенная библиотека отвечающая за объемное воспроизведение звука и используется в основном в играх, например, таких как GRID, Minecraft,Football Manager и других

1. Весь пакет с нашего сайта для полной переустановки:

2. Только необходимый файл

Шаг 3. Установка

Если Вы скачали установщик пакета, то просто запускаем и устанавливаем (переустанавливаем) его. И все последующие шаги Вам не нужны.

Если Ваш вариант сам файл библиотеки то читаем дальше.

Как вариант можно попробовать переписать dll файл в папку с игрой или программой, которая не запускается. Windows при запуске программ сперва ищет dll в запускаемой папке, а потом уже переходит для поиска к системным. Да и к тому же этот способ безопасней, так как внося изменения в системные разделы Windows, вероятность краха всей системы.

Для этого узнаем путь к запускаемому приложению, где оно расположено, путем нажатия правой кнопки мыши на ярлыке программы, где в контекстном меню выбираем свойства:


Именно в выделенную папку (как на гифке) и нужно скопировать необходимую dll

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

Для тех у кого 32-х битная версия:
Копируем файл библиотеки в папку C:\Windows\System32 . Если файл уже существует замените его.

Для тех у кого 64-х битная версия:
Если файл 64-х битный, то копируем его в папку C:\Windows\System32 .
Если файл 32-х битный то в папку c:\Windows\SysWoW64 (именно в этой папке для совместимости в Windows хранятся dll файлы 32-х битной разрядности).

Шаг 4. Регистрация библиотеки

Нажмите на клавиатуре сочетание кнопок + R появится окошко выполнить. В него надо ввести команду regsvr32 имя_вашей_библиотеки (например regsvr32 msvcp140.dll)

Для 32-х битного компьютера:

(например regsvr32 msvcp100.dll)

Для 64-х битного компьютера:

regsvr32 имя_файла_вашей_библиотеки

(например regsvr32 msvcp100.dll) – для регистрации файла версии 64 бит

Снова нажимаем + R и вводим:

%systemroot%\SysWoW64\regsvr32.exe msvcp110.dll

Шаг 5. Перезагружаем компьютер.

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

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

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

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

Ошибка DLL при запуске игр

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

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

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

Здесь мы видим, что игра выдает сообщение об ошибке DLL, которая связана с тем, что она не может найти по указанному пути необходимую ей . ? Да очень просто! Для начала стоит проверить, а есть ли действительно в системе нужная нам DLL-ка. Если таковая имеется, то значит скорее всего она повреждена и игра не может произвести запуск DLL. В этом случае будет целесообразно и зарегистрировать ее в системе. Как это делать мы уже писали, но давайте осветим этот момент еще раз. Нужно в командной строке выполнить команду regsvr32, которая как раз и занимается регистрацией или разрегистрацией библиотек DLL в системе.

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

Наверное каждый пользователь пк, геймер и не только видел выскакивающую ошибку dll, особенно это было неприятно, когда после покупки, установки какой-либо новой игры система при ее запуске выкидывает заветное окно с надписью «не найден файл dll». Чаще всего это сообщение выглядит так:

Запуск программы невозможен так как на компьютере отсутствует ****.dll. Попробуйте переустановить программу

Нам сразу хочется что-нибудь сломать (нервничаем, это нормально), часто люди бегут в магазин, где они купили диск, устраивают там скандал. Нервные клетки не восстанавливаются — сказал кто-то и подтвердил я. Давайте запомним, уясним для себя две вещи: все ошибки dll, не dll — это проблема вашего пк ; избавиться от ошибок windows мы можем самостоятельно, но не навсегда ; мы в состоянии исключить вероятность выскакивания всех ошибок винды, если будем поддерживать систему в актуальном состоянии.

Что такое dll, файл dll, для чего они нужны, где их найти?

Dll (dynamic link library) — дословно с англ. динамическая ссылка библиотеки, а своими словами это набор инструкций и библиотек для выполнения различных процессов на вашем компьютере. При запуске программ, игр подключаются необходимые библиотеки для их правильной, полноценной работы. Находятся они по адресу C:WindowsSystem32. Если библиотеки не хватает, ее нет вовсе, мы получаем любимую ошибку dll и . Благо операционная система нам сообщает какого именно файла или библиотеки не хватает, что помогает оперативно определить какие файлы dll отсутствуют и решить проблему.

Ошибка при запуске dll и как исправить dll ошибки?

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

Пример dll ошибки (*-dll) Решение для исправления ошибки
Не найден файл: dxgi.*, d3dx9_25.*, d3d11.*, d3dx9.*, d3dx9_43.*, d3dx10_43.*, d3dx9_26.*, d3dx9_30.*, d3dx9_27.*, d3dx11_43.*, d3dcompiler_43.*, d3d10.*, xinput1_3.*, d3dx9_31.*, xinput1_2.*, d3dx9_31.*, d3dx9_34.*, d3dx9_42.*, x3daudio1_7.*, x3daudio1_6.*, xrsound.*, переустановка приложения поможет исправить эту проблему, подобные скачать, установить, обновить компоненты DirectX ()
Не найден файл xlive.* отсутствует компонент Game for Windows Live, нужно эту службу
не найден steam_api.* установить службу steam
запуск программы невозможен так отсутствуют файлы: msvcr90.*, msvcr110.*, msvcr100.*, msvcr80.*, msvcr120.*, msvcrt.*, msvcr71.*, msvcrt.*, msvcp120.*, msvcp110.* x64 для исправления этой ошибки скачать, установить Установить
Точка входа не найдена, uplay_r1_loader.*, Uplay.exe, uplay_ach_earnAchievement не найлен в библиотеке DLL, uplay.*, ubiorbitapi_r2_loader.* скачать, установить Ubisoft Game Launcher (если его нет), обновить Microsoft .NET Framework
Запуск программы невозможен так как на компьютере отсутствует physxcudart_20.*, physxloader.*, и другие physx…* скачать, установить

На многих форумах и сайтах пишут, и рекомендуют скачать файл dll, поместить его туда куда нужно и это исправит ошибку Dll. Я бы не рекомендовал этого делать (ну разве только в конкретных случаях), потому что за каждый файл или библиотеку dll отвечает определенная программа, модуль или компонент операционной системы Windows. Обновляя требуемую программу полностью, вы исправляете имеющуюся dll ошибку и предостерегаете себя от возможных последующих ошибок в библиотеках dll.

Теперь мы знаем что это за dll ошибка при запуске игр и приложений, как исправить ошибку dll, как помочь нашему компьютеру не совершать ошибки в дальнейшем.

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

Скачивание и установка DLL-файлов

При появлении какой-то ошибки обычно указывается название DLL-файла, которого не хватает. Вам нужно ввести название этого файла в поисковике и скачать. Например, нам нужно скачать файл d3dx9_27.dll. Мы вводим это название в Яндексе или Google и скачиваем с какого-нибудь сайта. Наиболее безопасный и популярный сайт, с которого я сам скачиваю DLL-файлы – DLL-FILES.com. Там есть поле, в которое можно ввести название файла.

Теперь нужно разобраться, куда кидать этот файл dll. В разных системах местоположение этих файлов разное, поэтому я начну с ранних ОС:

  • Windows 95/98 – помещаем файл в папку C:\Windows\System ;
  • Windows NT или 2000 – помещаем файл в папку C:\WINNT\System32 ;
  • Windows XP, 7, 8, 10 – помещаем файл в папку (для 32-х битных систем в C:\Windows\System32 , а для 64-х битных в C:\Windows\SysWOW64 ).

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

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

А что делать, если вы закинули все нужные файлы в папку, но программа или игра по-прежнему не запускается? Тогда можно попробовать зарегистрировать библиотеку в системе, сейчас покажу, как это сделать.

Как зарегистрировать DLL в Windows

Регистрация библиотек DLL в Windows происходит очень просто и быстро. Вы можете это сделать, если у вас стоит Windows 7, 8 или 10. Еще хочу отметить, что у вас должны быть права администратора. В данном пункте я покажу 3 способа регистрации динамических библиотек.

Первый способ

Он самый популярный и используемый пользователями.

Открываем окно «Выполнить», с помощью клавиш Win+R и вводим туда команду regsvr32.exe название_файла.

Другими словами, команда может выглядеть так (покажу на примере файла d3dx9_27.dll):

regsvr32.exe d3dx9_27.dll


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

regsvr32.exe C:/Windows/system32/d3dx9_27.dll


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

Второй способ

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

regsvr32.exe путь_к_файлу_dll

То есть мы выполняем все тоже самое, только в командной строке.


Должно снова появиться сообщение, что библиотека зарегистрирована, либо ошибка.

Третий способ

Метод редко кем используемый, но тоже рабочий. Берете свой dll-файл и нажимаете на нем правой кнопкой мыши, в появившемся контекстном меню выбираете пункт «Открыть с помощью» и идете в папку Windows/System32 , и ищете там программу regsvr32.exe, через которую и будем открывать библиотеку.

Ошибка при регистрации DLL-файлов

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

Такие ошибки могут возникать по следующим причинам:

  • Библиотеку не нужно регистрировать, потому что она не поддерживает эту функцию, либо она уже зарегистрирована в системе;
  • Скачанный вами файл битый, либо совершенно не относящийся к библиотекам.

Как решить проблему?

  • Опытные пользователи могут использовать regasm.exe;
  • Попробуйте в интернете скачать этот же файл, только из другого источника. Либо посмотрите, что это за файл и воспользуйтесь специальными установщиками DLL-файлов. Некоторые библиотеки поставляются с каким-либо программным обеспечением, например, DirectX.
  • При скачивании какого-то приложения антивирус мог удалить в процессе установки важные DLL-библиотеки, которые были в установщике, поэтому нужно скачать игру с другого источника, либо временно отключить антивирус, и переустановить приложение.

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

Рекомендуем почитать

Наверх