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

Как зарегистрировать DLL в Windows 10 и Windows 11Среди частых вопросов пользователей, особенно после того, как они сталкиваются с тем, что какая-то из библиотек DLL отсутствует в Windows 10, Windows 11 или других версиях системы — как зарегистрировать DLL в соответствующей версии ОС.

В этой инструкции подробно о способах регистрации библиотек DLL в Windows x64 и x86 (32-бит) с помощью regsvr32.exe (и кратко о regasm.exe), о возможных нюансах и проблемах, которые могут возникнуть в процессе.

Регистрация библиотеки DLL в Windows 10, Windows 11 и предыдущих версий системы

Дальнейшие шаги описаны в предположении, что DLL, которую нужно зарегистрировать, уже находится в нужном расположении: папке C:\Windows\System32, C:\Windows\SysWOW64 или, в некоторых случаях — отдельных папках программ, к которой относится соответствующая библиотека, например, для 1С — C:\Program Files\1cv8\номер_версии\bin (или Program Files x86 в случае 32-битной версии).

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

  • В x64 версиях Windows 64-битные DLL хранятся в System32, а 32-битные — в SysWOW64 (у некоторых начинающих пользователей бывает обратное предположение исходя из имён папок).
  • Файлы DLL x64 и x86 (32-бит) — это разные файлы. И если прямого указания на разрядность в месте загрузки файла нет, то чаще это 32-битный файл (что не мешает ему работать в x64 системе), но это не всегда так.
  • Для регистрации библиотеки DLL используется системный инструмент regsvr32.exe, который также доступен в двух версиях, которые лежат в папках System32 и SysWOW64 (в случае 64-битных систем). По умолчанию при описываемых далее действиях запускается x64 версия.
  • 32-битным программам и играм (по умолчанию устанавливаются в Program Files x86 в 32-битных системах) для работы нужны 32-битные DLL, не зависимо от разрядности Windows.

Сам процесс регистрации в общем случае состоит из следующих шагов:

  1. Нажмите клавиши Win+R на клавиатуре (Win — клавиша с эмблемой Windows). Также можно нажать правой кнопкой мыши по кнопке «Пуск» в Windows 11 или Windows 10 и выбрать пункт контекстного меню «Выполнить».
  2. Введите команду regsvr32.exe путь_к_файлу (если путь к файлу содержит пробелы, возьмите весь путь в кавычки), например, для регистрации библиотеки DLL COMCNTR.DLL в 1С (для 64-бит) команда может иметь вид:
    regsvr32.exe "C:\Program Files\1cv8\8.3.19.1150\bin\comcntr.dll"
    Если DLL находится в System32, полный путь указывать не обязательно, достаточно простого имени файла, как на изображении ниже. Регистрация библиотеки DLL с помощью regsvr32
  3. Нажмите Ок или Enter.
  4. При успехе вы получите сообщение вида «Успешное выполнение DllRegisterServer в имя_файла.dll» или «Успешное выполнение DllRegisterServer и DllInstall в имя_файла.dll». Успешная регистрация библиотеки DLL

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

Ошибка регистрации regsvr32 точка входа DllRegisterServer не найдена

Дополнительно: для регистрации классов из библиотек DLL .NET Framework в COM с созданием необходимых записей в реестре используется regasm.exe из .NET SDK, причем базовая команда регистрации DLL выглядит тем же образом, что и в случае с regsvr32.exe. Подробнее по использованию regasm — https://docs.microsoft.com/ru-ru/dotnet/framework/tools/regasm-exe-assembly-registration-tool.

Почему не удается зарегистрировать DLL

Ошибка при регистрации с помощью regsvr32 вида «Точка входа DllRegisterServer не найдена» говорит о том, что эта библиотека DLL не поддерживает регистрацию описанным методом. Можно попробовать использовать вариант команды:

regsvr32 /i /n путь_к_файлу.dll
но с большой вероятностью и это не поможет.

У большинства домашних пользователей такая проблема возникает при регистрации файлов DLL для игр и программ, часто не вполне лицензионных, которые сообщили, что нужный файл DLL не обнаружен или отсутствует. Причем сами библиотеки DLL обычно скачаны со сторонних сайтов (и чаще всего имеют имена начинающиеся с «vc», «msvc» или «d3d»). А решение, как правило, простое — выяснить, частью какого набора компонентов является эта DLL и установить эти компоненты с помощью их собственного установщика. Более подробно проблема и подходы к решению описаны в инструкции Точка входа DllRegisterServer не найдена — причины и возможные решения.

Видео

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

Комментарии (65) к Как зарегистрировать DLL в Windows

  • Андрей Зимин

    Добрый день, у меня как раз случай, когда модуль загружен, но точка входа не найдена DllUnregisterserver, файл hotplug.dll Что вы в данном случае можете посоветовать? Вы написали, что напишите позже, вы уже написали?

    Ответить

    • Dmitry

      Андрей, пока нет.
      Насчет советов: вы вручную откуда-то скачивали hotplug.dll? Проверяли его на virustotal? Пробовали отменить регистрацию в ОС, а потом вновь зарегистрировать с помощью regsvr32?

      Ответить

  • walera

    не удается зарегить ни одним из способов застрял на ошибке точка входа не найдена. windows 7 x64 разряд. пытаюсь запустить Homeworld 2.

    Ответить

    • Dmitry

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

      Ответить

  • Ruslan

    Может быть из-за слешей, у вас так «/», а должно быть так «\».

    Ответить

  • Tema

    В командной строке, когда прописываю regsvr32 flowchartx32.dll
    Пишет — «Отказано в доступе»

    Ответить

    • Dmitry

      Скорее всего у вас нет прав администратора, но не факт. Тут можно попробовать запустить вручную командную строку от имени администратора, а в ней уже вписать команду. А вообще, тут судя по всему у вас пиратка Skyrim и этот файл удалил ваш антивирус или защитник Windows. Как решить, думаю, догадаетесь.

      Ответить

  • Валерий

    Все три способа попробовал не помогло Виндовс 10 Модуль C:\Windows\System32\VB6FR.DLL загружен, но точка входа DillRegisterServer не найдена.
    Проверьте что C:\Windows\System32\VB6FR.DLL являеться правильным файлом DLL или ОСХ и повторите попытку

    Ответить

    • Dmitry

      Если вы уверены в том, что скачали оригинальный файл, то попробуйте его просто в папку с программой скопировать, которая ошибку показывает. (а если там есть подпапка bin — то в нее).

      Ответить

  • Владилав

    Здравствуйте не могу нечего поделать с этим файлом kernelbase.dll не могу не одну игру установить перепробовал все варианты которые здесь написаны но нечего не помогло

    Ответить

    • Dmitry

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

      Ответить

  • Дмитрий

    Имя события проблемы APPCRASH
    Имя приложения: ShadowOfMordor.exe Версия приложения: 1.0.1951.27
    Помогите пж, я уже всё перепробовал

    Ответить

    • Dmitry

      Похоже на проблемы либо с драйверами видеокарты Radeon, либо на проблему с самим приложением (которое неправильно инициализирует видеокарту).

      Ответить

  • motiktolika

    перепробовал все способы, не знаю, что делать

    Ответить

  • FryMSS

    Ошибка точки входа ntdll dll. Все способы не работают. Windows 7

    Ответить

  • Дмитрий

    Здравствуйте! Была проблема: устанавливал WebReaserch, лицензионный. Не работал, не мог найти библиотеку winaaut.dll, не получалось ее зарегистрировать посредством regsvr32.exe, о чем вы и пишете. Проблема решилась моментально, когда я скопировал winaaut.dll в папку установки программы. Спасибо!

    Ответить

  • Chife

    В основном ругается на directx, а потому попробуйте скачать его и установить (только не веб-установщик, а полный). Веб-установщик зачастую просто ничего не сделает.

    Ответить

  • Oleg

    Тема — чушь, ничего нового, все и до этого пробовал, проблема осталась неизменной

    Ответить

    • Dmitry

      А какая именно проблема? Дело в том, что не любую DLL можно взять вот так и с помощью regsvr32 зарегистрировать (потому что в DLL внутри отсутствует модуль для регистрации и вы получаете что-то вроде «точка входа в процедуру DLL register server не найдена). Для многих нужно устанавливать компоненты, содержащие эту DLL: т.е. ищем частью чего является эта DLL и устанавливаем нужные компоненты.

      Ответить

      • Алех

        У меня библиотека не регистрируется на WIN 10 после последнего глобального обновления, это не вирус, а часть драйвера для DAC. На 8.1 тот же драйвер работает. По моему выше написанные методы устарели, программисты конечно знают что делать, но простому юзеру это, увы стало недоступно.

        Ответить

  • DOc

    Не работает ваша шляпа. Вы застряли в Хрюше и устаревшие советы даете. Постыдились бы, на Вас дети смотрят.

    Ответить

    • Dmitry

      В статье внимательно смотрите: не всё так можно зарегистрировать. Всякие msvcr/msvcp/dx и многие другие регистрируются собственными установщиками.

      Ответить

  • Орлеан

    Извините, пожалуйста, но у вас нормально с головой? Это что за советы? 1 Сделайте так, но у вас не будет работать! 2 Сделайте вот это, но это тоже не работает! Мой совет: не надо заниматься плагиатом и выдавать советы за свои. Спасибо.

    Ответить

    • Dmitry

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

      Ответить

  • Алексей

    Здравствуйте. В общем,я элементарно не могу запустить игру,пишет об ошибке с файлом msvcp140.dll. Я как бы уже пробовал microsoft visual c++ переустанавливать,с сайта майкрософта. Но Это ничего не меняет,скачивал файл отдельно . Тоже самое,пробовал зарегистрировать,но вылетает ошибка ,мол не удалось загрузить модуль . Не найден указанный модуль.
    Много если честно уже перепробовал ,даже винду менял,не просто переустанавливал ,а уже лиц нашел даже . В чем может быть проблема?

    Ответить

    • Dmitry

      А вы MS Visual Studio 2015 скачивали? и x86 и x64 (для 64-битных систем нужно сразу обе).
      Иногда (для самого нового софта) может потребоваться MS Visual Studio 2017 (тоже обе версии)

      Ответить

      • LinkinPro

        Проще скачать Driver Booster и запустить сканирование — он по умолчанию C++ от 2005-го до 2017-го предложит поставить. Рекомендую весь комплект поставить. Можно заодно и DirectX обновить — тогда уж точно вся поддержка для прог и игр будет…

        P.S. Через Process Monitor смотрел — DB все катает с сайта Майкра…

        Ответить

  • Ирина

    Добрый день! Подскажите, что делать. У меня на Windows 8.1 после обновлений последних перестал открывать браузеры Opera и Google Chrome — выдает ошибку «Запуск программы не возможно, так как на компьютере отсутствует USP10.dll. Попробуйте переустановить программу». Переустановка браузеров не помогла.

    Ответить

    • Dmitry

      Здравствуйте. А есть ли файл usp10.dll в папке Windows/System32?
      Если вдруг нет, попробуйте выполнить проверку целостности системных файлов — https://remontka.pro/files-integrity-windows-10/

      Ответить

  • Vladislav

    Ничего не помогло,ни один из способов,выскакивает эта ошибка

    Ответить

    • Dmitry

      Не любую DLL можно так зарегистрировать. В вашем случае не нужно ее было ниоткуда скачивать, а следовало сделать вот так: https://remontka.pro/msvcp140-dll/

      Ответить

  • Roman

    Попробовал, пишет точка входа DillRegisterServer не найдена. Файл msvcp100.dll скачивал в составе Microsoft Visual C++ с официального сайта при том 2008 2010 2012 и 2015 гг. Что делать?

    Ответить

    • Dmitry

      Так он если вы устанавливали эти компоненты уже зарегистрирован и так.
      Но если ошибка (что файл отсутствует) не исчезает, то:
      1. Если у вас x64 Windows, то установите и x86 и x64 версии компонентов (многие программы и игры требуют 32-бит, независимо от системы).
      2. Если 1 не сработает, попробуйте скопировать файл из System32 в папку с исполняемым файлом программы. Не поможет, скопируйте из SysWOW64.

      Ответить

  • Alena

    Здравствуйте. Ошибка заключается в следующем: не устанавливаются репаки игр, но если создавать образ то все в порядке. Ошибка при установке репака «Unarc.dll вернул код ошибки -11» так же встречалось -7. Пробовала переставлять винду, заменила оперативку, переставила архиваторы, ничего не помогает. Все пути на английском, авнтивирусы и брандмауэры выключены. Помогите пожалуйста.

    Ответить

    • Dmitry

      А встроенные «защитники» Windows тоже отключены?

      Ответить

  • SpeCura

    Здравствуйте! Такая вот проблемка возникла! Игра (Лицензия) требует наличия «D3DCompiler_47.dll»! Я, прекрасно понимая, что это вероятно библиотека DirectX, скачал соответствующий установщик с сайта Microsoft и… При установке получил странное сообщение, что у меня стоит последняя версия DirectX! Покопавшись в интернете, я выяснил, что это за файл и куда его ставить! А точнее в папку system32! Собственно, у меня там этого файла и не было! Я скачал его, положил в папку и осталось зарегистрировать! Но вот незадача… Все три способа, предложенных вами, дали, как вы и сказали, один и тот же результат! Ошибка следующая: «Не удалось загрузить модуль С:\…\d3dcompiler_47.dll. Проверьте, что двоичный файл хранится на указанном пути или запустите отладку чтобы диагностировать проблемы с этим двоичным файлом или зависимыми DLL файлами. Не найден указанный модуль.»

    Так же теперь при запуске собственно игры выдаётся следующая ошибка: «Ошибка при запуске приложения (0xc000007b).»

    Копирование данного файла в директорию игры так же ничего не дало!
    Антивирус проверял, никаких системных файлов он не ел! =)

    В чём может быть проблема и что можете посоветовать?

    Ответить

    • Dmitry

      Здравствуйте.
      Не любую DLL можно зарегистрировать с помощью regsvr. Но, по поводу вашего файла — он слегка вводит в заблуждение своим названием и содержится не в тех библиотеках, что установщик DirectX ставит, а в обновлении KB4019990. подробнее: https://remontka.pro/d3dcompiler_47-dll/

      Ответить

  • artfg

    добрый день. столкнулся с проблемой mss32.dll. Сделал все по инструкции, но вышла как раз таки та ошибка которую не обговорили

    Ответить

  • Prosto

    Проблема с iphlpapi.dll. Пишет что файл iphlpapi.dll не найден при запуске практически любой проги — AIDA, AIMP и прочих. Пробовал зарегистрировать библиотеку — не дает. Пробовал создать новую учетную запись, и из под нее запускать проги — не работают. Откат виндовса не работает

    Ответить

  • Евгений

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

    Ответить

  • Дмитрий

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

    Ответить

    • Dmitry

      Здравствуйте.
      Смотря что там за программа и какая версия Windows.
      Вообще, для начала проверьте, есть ли файл psapi.dll в C:\Windows\System32\ и C:\Windows\SysWOW64.
      Если есть, попробуйте скопировать его в папку с exe-шником программы (сначала из одной папки, а если не сработает — из другой).

      Ответить

  • Гость

    В win7 x64 не получилось, хотя в ХР получалось. ДЛЛ та же — зрительные образы для проигрывателя WMP.

    Ответить

    • LinkinPro

      Ты тот же самый DLL регаешь? То есть, взял с XP и засунул в 7-ку? Что за образы? Интегрированные или сторонние?

      Ответить

  • LinkinPro

    Димось, старик (не ты ли говорил что ты стар уже?), разжуй ситуацию… Игры ноют что в ОС как-бы битые DLL DirectX. Через веб и автоном. установщик ошибка, мол, «Смотри в логи, я те тут не буду отчитываться!». Удалил все d3dx……dll из System32, SysWOW64 и WinSxS (в послед. я так понял что там бэкап DLL). Через веб-установщик накатил DirectX, встал нормально. Однако «d3dxof.dll» он не поставил, но я конечно же сделал бэкап перед удалением и засунул этот DLL обратно в исходное положение. В WinSxS засунул этот же DLL, права выставил. Через SysWOW64/RegSvc32.exe запустил DLL — пишет эту ошибку, что не вышло зарегать (не буду заново запускать регистратор). Получается что DLL уже зареган? Учитывая что я удалял через DELETE…

    Ответить

    • Dmitry

      Нельзя по результату сказать, зарегистрирована или нет: там суть в том, что regsvr сообщает о том, что именно в этой DLL нет функции регистрации… как бы объяснить: в общем, когда запускается regsvr32.exe что-то.dll, то в этой DLL ищется функция регистрации и запускается именно она, т.е. «библиотека сама себя регистрирует» и это могут делать не все DLL. d3dxof.dll не может.
      И скорее всего, она уже зарегистрирована (удаление через delete не отменит регистрацию).

      Ответить

  • Евгений

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

    Ответить

    • Dmitry

      Не все библиотеки можно таким образом зарегистрировать. Проверьте, а не удалил ли ваш антивирус файл fmod.dll при установке игры. И если да, то переустановите её при отключенном антивирусе.

      Ответить

  • Олег

    Здравствуйте у меня проблема, я скачал Steam установил его и тут такая проблема steamui.dll ненайден я пробовал всё и ваш способ тоже как вы посоветуете исправить эту проблему моя характиристика ПК : windows xp, x32 , x86

    Ответить

  • Анна

    Помогите, пожалуйста!
    Не могу найти файл opencl.dll который бы подошел и зарегистрировался. Из-за этого не работает magic bullet looks.
    Это уже второй компьютер. Причем когда винда стояла 32бит, все работало

    Ответить

    • Dmitry

      Здравствуйте.
      Opencl.dll входит в комплект драйверов видеокарт и при их установке вручную автоматически регистрируется в системе. Правда, случается (особенно на видеокартах NVidia) что с новыми драйверами достаточно старые игры перестают работать, ссылаясь на этот самый файл.

      Ответить

  • ОЛЕКО

    После установки драйвера от нвидиа. Голубой экран, перезагрузка, час не загружается. На г. Э. Была надпись об ошибке, которую пытаются решить. Как быть.

    Ответить

    • Dmitry

      А больше при перезагрузки таких ошибок не появляется? Какая версия системы?

      Ответить

Оставить комментарий

Интересное
Список инструкций Windows 11 Windows 10 Подписаться