Как сделать точку входа dllregisterserver не найдена

Добавил пользователь Евгений Кузнецов
Обновлено: 10.09.2024

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

Воспользуемся инструментом Regsvr32 командной строки, который регистрирует и отменяет регистрацию DLL библиотек и ActiveX (OCX) в Windows 10/8.1/7.

Отмена и повторная регистрация DLL библиотеки

Путь к DLL библиотеке можно скопировать, чтобы не писать его вручную в командой строке. Для этого, зажмите левый Shift и нажмите правой кнопкой мыши по DLL фалу, после чего "Копировать как путь".

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

Наберите в поиске "Командная строка" и нажмите по ней правой кнопкой мыши, после чего выберите "Запустить от имени администратора" и вводите ниже команды, которые вам необходимы.

командная строка запуск от имени администратора

В командную строку введите следующую команду, чтобы зарегистрировать DLL библиотеку в системе Windows.

регистрация DLL

Отменить регистрацию файла DLL

Чтобы отменить текущую регистрацию DLL файла, введите ниже команду и нажмите Enter:

Отменить регистрацию DLL файла

Перерегистрировать все файлы dll

Чтобы зарегистрировать все файлы dll в системе Windows, то:

Перерегистрировать все файлы dll

  1. Если 32-разрядная DLL находится в папке System32, то переместите ее в папку SysWoW64 и введите ниже команду.

или

Что нужно учесть?

1. В 64-разрядной версии операционной системы Windows существует две версии файла Regsv32.exe:

  • 64-разрядная версия - это %systemroot%\System32\regsvr32.exe
  • 32-разрядная версия - это % systemroot%\ SysWoW64\regsvr32.exe.

2. В 64-разрядной версии Windows, 32-разрядные файлы DLL всегда находятся в папке Windows\SysWOW64. В то время как 64-битные библиотеки DLL находятся в папке Windows\System32. В 32-битной версии Windows, файлы DLL находятся только в папке Windows\System32. Здесь не будет папки SysWOW64.

3. Если вы получаете ошибки, такие как DllRegisterServer, модуль несовместим с версией Windows или точка входа не найдена, то знайте:

  • Много DLL библиотек, таких как d3dx9_43.dll, MSVCR71.dll, VCRUNTIME140.dll, находятся в сторонних компонентах как DirectX, NET Framework и Visual C++, которые нужно скачать на сайте Microsoft и установить. Вы можете в интернете почитать о самом файле, к чему он относится. Также, можете воспользоваться поиском на этом сайте, так как я много описывал решений о проблемах с DLL файлами.
  • Отмените регистрацию и зарегистрируйте DLL файл повторно.

4. Отключите на время контроль учетных записей ( UAC ) во время регистрации DLL, так как он может мешать процессу.

Смотрите еще:

telegram

Загрузка комментариев Канал Чат

Что значит точка входа DllRegisterServer не найдена

Файлы библиотек DLL в общем случае представляют со

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

Почему так происходит? Потому что далеко не все DLL содержат такую функцию и не все библиотеки можно установить в системе с помощью regsvr32.exe, а рекомендации использовать команду для регистрации DLL во многих инструкциях вводят в заблуждение и неприменимы.

Исправляем данный сбой

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

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

Разрядность приложения должна быть такой же, как у ОС (32 bit или 64 bit). Если вы установите элемент не той разрядности, то данный сбой не исчезнет. Те элементы, которые вы скачали, нужно переместить в определённые папочки ОС Виндовс — SysWOW64, System32. После этого, данные файлы требуют регистрации. Ниже я покажу, как это делается.

Отключение антивируса

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

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

Удостоверьтесь, что не закончилось место на диске

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

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

Модуль загружен … но точка входа DLLRegisterServer не найдена

Загрузка библиотеки из интернета

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

В чём суть ошибки Модуль загружен?

Итак, объяснение смысла данной ошибки закономерно будет начать с определения «Библиотеки«. Библиотека или в некоторых языках программирования, модуль (модули) — это набор подпрограмм, используемых в разработке программного обеспечения. Проще говоря, это совокупность небольших и независимых блоков, каждый из которых является функционально законченным фрагментом кода.

Динамические библиотеки DLL, встраиваемые в Windows, принадлежат к модулям общего пользования (shared library). Отличительные их особенности для пользователя состоят в следующем:

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

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

Регистрируем dll с помощью командной строки

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

Код ошибок 0x80004005 обычно происходит при доступе к общим папкам или дискам, при использовании определенных программ или при установке обновлений. Вот наиболее распространенные причины кода ошибок 0x80004005:

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

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

Способ исправления проблем с активацией

Способ исправления проблем с поврежденными файлами

Отключение контроля учетных записей

Иногда устранить ошибку DllRegisterServer 0x80070005 можно путем отключения контроля UAC. После деактивации система не будет выводить запрос на подтверждение администраторского доступа.

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

Перейдите в командную строку с помощью системного поиска.


Выполните следующую команду:

reg.exe ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v EnableLUA /t REG_DWORD /d 0 /f

После успешного завершения перезагрузите компьютер и выполните то действие, которое не удалось из-за отсутствия вызова DllRegisterServer.

Если regsvr32 обработана успешно, обратно включите UAC:

reg.exe ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v EnableLUA /t REG_DWORD /d 1 /f

Отмена регистрации DLL-файла

В консоли выполните команду для отмены регистрации библиотеки: Regsvr32 /u *.dll

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

Для исправления проблемы можно предложить следующие подходы:

Разобраться, что это за файл DLL и устанавливать е

  1. Попробовать использовать ту же команду, но с дополнительными параметрами для установки файла DLL (перед слэшами и именем файла пробелы):При использовании этих ключей, поиск процедуры DllRegisterServer выполняться не будет, вместо этого будет использоваться DllInstall. Но и её может не оказаться в файле и это нормально.
  2. Разобраться, что это за файл DLL и устанавливать его правильно, обычно в составе набора компонентов, содержащих этот файл, при условии, что это требуется. Что имеется в виду? Например, при проблемах с файлами, имена которых начинаются с msvc, как правило требуется установить нужную версию распространяемых компонентов Visual C++ (причем для x64 систем часто нужно устанавливать также и x86 или 32-бит версии), для файлов с именами dx — установить недостающие библиотеки DirectX, используя веб-установщик от Microsoft, а для файлов unarc.dll, ISDone.dll обычно и вовсе не требуется установка каких-либо файлов и дело не в них.
  3. Иногда может сработать следующий подход: просто копируем файл .dll в ту же папку, где находится файл .exe программы или игры, которая сообщает об ошибке.
  4. Использовать поиск у меня по сайту, указав имя DLL, из-за которой происходит ошибка: по большинству наиболее часто встречающихся у меня есть подробные инструкции с указанием, какие именно компоненты необходимо установить.

Важный момент по всем пунктам: файлы DLL для x64 и 32-бит (x86) систем отличаются даже при одинаковом имени, при этом даже в 64-бит Windows 10, 8.1 или Windows 7 для работы какой-то программы может требоваться DLL для 32-бит, а с DLL для x64 она может не запускаться.


Что значит, DllRegisterServer не удалось найти точку входа?

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

Пакеты .dll можно назвать общими. Их специфика:

модульные элементы

  • Элементы могут активироваться сразу несколькими программами;
  • Загружаются элементы на автомате сразу, как только последует запрос от приложения;
  • Подобные пакеты практически не используют ресурс компьютера.

Давайте отметим недостатки этой библиотеки:

  1. Когда часть элементов отсутствуют, или в них есть неполадки, программы, которые используют битые элементы, начинают функционировать со сбоями или вообще не работают;
  2. Если пользователь поменяет настройки части таких элементов, то возможно, что зависящие от них программы просто перестанут функционировать:
  3. Файлы таких модулей уязвимы в связи с тем, что им даётся один адрес от ОС.

Итак, объяснение смысла данной ошибки закономерно будет начать с определения «библиотеки«. Библиотека или в некоторых языках программирования, модуль (модули) — это набор подпрограмм, используемых в разработке программного обеспечения. Проще говоря, это совокупность небольших и независимых блоков, каждый из которых является функционально законченным фрагментом кода.


Динамические библиотеки DLL, встраиваемые в Windows, принадлежат к модулям общего пользования (shared library). Отличительные их особенности для пользователя состоят в следующем:

  • Функции, прописанные в таких библиотеках, могут использоваться несколькими программами одновременно;
  • Загружаются они по запросу соответствующего процесса, то есть динамически, не потребляя без надобности ресурсы ПК.
  • При внесении в библиотеку изменений программы, использующие ее могут перестать работать. Этот недочет является излюбленным у распространителей вирусов. Ведь сама Windows функционирует на основе модулей и, повредив их код, можно повлиять на работу ОС.
  • При отсутствии библиотеки или ее некорректной версии программа, использующая данный модуль, соответственно, будет либо неправильно функционировать, либо откажется работать.
  • Функции, прописанные в библиотеке Dll, получают один адрес в оперативной памяти для всех процессов, вызывающих их, что упрощает эксплуатацию уязвимостей модульного метода организации ПО;

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

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

Исправляем данный сбой

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

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

3 окна

Разрядность приложения должна быть такой же, как у ОС (32 bit или 64 bit). Если вы установите элемент не той разрядности, то данный сбой не исчезнет. Те элементы, которые вы скачали, нужно переместить в определённые папочки ОС Виндовс — SysWOW64, System32. После этого, данные файлы требуют регистрации. Ниже я покажу, как это делается.

Что за ошибка, почему возникает

Регистрируем dll с помощью командной строки

запуск от имени администратора cmd

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

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




Причины ошибки — Точка входа dllregisterserver не найдена

Новые версии Windows, в частности 7 и 8 версии, взаимодействуют с программами при помощи файлов с расширением .dll.

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

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

Не забывайте, что библиотеки нужно качать под вашу версию windows x64/x84(x32)

через выполнить

RegSvr32.exe C:\Windows\SysWOW64\thumbcache.dll (или путь по вашему адресу) и нажать ввод.

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

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

Обновление системы

Поиск обновлений

Что делать, если в диспетчере устройств появляется неизвестное устройство с кодом 28

Центр обновлений

DllRegisterServer не выполняет вызов из-за ошибки 0x80070005

Попробуем выключить контролирование учеток (UAC).

reg.exe ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v EnableLUA /t REG_DWORD /d 0 /f

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

Ручное создание COM+ соединения для 1С

Posted by Makc — 12.11.2015

На сервере под управлением Microsoft Windows Server 2008 R2 x64 работает 32-х разрядная версия сервера 1С. Не спрашивайте – почему именно так, но на личном опыте убедился, что версия 1С данной разрядности работает стабильнее, чем её 64-х битный собрат. Единственным минусом, который я пока обнаружил, является тот факт, что при установке 32-х битной версии нет возможности активировать компоненту COM+ соединений, т.к. 64-х битные приложения не могут запускать 32-х битные DLL, которые активируются при запуске 32-х битного COM+ объекта 1С.

Это выливается в некоторые трудности. Например, при попытке завершения “подвисшего” сеанса из следующей формы:

Сделать это, используя “COM-соединение с агентом сервера”, не получится, и операция завершится ошибкой.

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

1. Необходимо зарегистрировать в системе 32-х битную библиотеку comcntr.dll. Для этого, откройте на сервере командную строку cmd.exe от имени администратора и выполните следующие команды:

C:\Users\администратор>cd C:\Program Files (x86)\1cv8\8.3.6.2390\bin C:\Program Files (x86)\1cv8\8.3.6.2390\bin>regsvr32 comcntr.dll

Папку bin надо искать по пути, куда у вас установлена текущая версия платформы 1С. На момент написания статьи – её номер 8.3.6.2390.

2. Запускаем консоль “Службы компонентов”: . Раскрываем ветку “Службы компонентов”. Вызываем меню, кликнув правой клавишей мыши по ветке “Приложения COM+” и выбираем :

3. У вас откроется приветственное окно “Мастера установки приложений COM+”, в котором необходимо нажать “Далее”:

4. В следующем окне нажмите на “Создать новое приложение”:

5. Введите желаемое имя для нового приложения. В примере используется V83_ComConnector, отметьте способ активации, как “Серверное приложение” и нажмите далее:

6. В следующем окне выберите учетную запись, которую использует при старте агент сервера 1С. В примере – это учетная запись локального администратора сервера. Введите пару логин/пароль и нажмите “Далее”:

7. В следующем окне “Мастера…” нажмите “Далее”:

8. На следующем шаге, вам необходимо добавить (если имеет смысл) пользователя, от имени которого стартует агент сервера 1С и, соответственно, учетная запись которого будет использована для удостоверения работы нашего нового COM+ приложения. В окне данного примера указан только доменный администратор, от имени которого запущен “Мастер установки приложений COM+”, нажмите кнопку “Добавить”:

9. В следующем окне введите имя учетной записи, от имени которой работает агент сервера 1С, и нажмите “ОК”:

10. Вернувшись к “Мастеру…”, убедитесь, что искомая учетная запись добавилась и нажмите “Далее”:

11. Закройте “Мастер установки приложений COM+”, нажав “Готово”:

12. Мы вернулись к окну консоли “Службы компонентов”. Убедитесь, что приложение COM+ с вашим именем (в примере – V83_ComConnector) создан:

13. Раскройте дерево созданного приложения и, вызвав меню правой кнопкой мыши по ветви “Компоненты”, создайте новый компонент :

14. У вас откроется приветственное окно “Мастера установки компонентов COM+”, в котором необходимо нажать “Далее”:

15. В следующем окне нажмите на “Установка новых компонентов”:

16. С помощью окна explorer выберите библиотеку comcntr.dll, находящуюся по пути , которую мы зарегистрировали в системе на первом шаге. Убедитесь, что путь к этой библиотеке совпадает с вашей версией платформы. В примере – это 8.3.6.2390. И нажмите “Открыть”:

17. В следующем окне “Мастера…” нажмите “Далее”:

18. Закройте “Мастера установки компонентов COM+”, нажав “Готово”:

19. Вы вернетесь к окну консоли “Службы компонентов”. Убедитесь, что в нашем приложении COM+ создалась новая компонента:

20. Вызовите её свойства:

21. И на вкладке “Безопасность” в окошке “Явно установленные для выделенных объектов роли:” отметьте мышкой CreatorOwner и нажмите “ОК”:

22. Вернувшись к консоли “Службы компонентов” закройте её и перезагрузите сервер.

После выполнения указанных действий, завершение “подвисших” сеансов в 1С версии 8.3 происходило без проблем. Единственное неудобство – теперь после каждого обновления платформы 1С на новую версию, необходимо проделывать данную операцию.

_______________По мотивам данной статьи.

Rating: 4.0/5(4 votes cast)

Производим перезагрузку ПК и проверяем, исчез ли сбой?

reg.exe ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v EnableLUA /t REG_DWORD /d 1 /f

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

Нужна опять перезагрузка.

Из-за чего может не получиться зарегистрировать DLL?

Модуль загружен, но dllregisterserver не удалось найти точку входа 6 решений проблемы

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




Как зарегистрировать DLL: три способа

Первый способ регистрации DLL

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

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

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

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

Например: regsvr32.exe c: windows /system32/openal32.dll.

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

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

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

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

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

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

Вам необходимо всего-навсего открыть DLL-файл с помощью regsvr32.exe. Вот как это сделать:

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

Скриншоты ошибки загрузки модуля

Что значит, DllRegisterServer не удалось найти точку входа?

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

Пакеты .dll можно назвать общими. Их специфика:

модульные элементы

  • Элементы могут активироваться сразу несколькими программами;
  • Загружаются элементы на автомате сразу, как только последует запрос от приложения;
  • Подобные пакеты практически не используют ресурс компьютера.

Давайте отметим недостатки этой библиотеки:

  1. Когда часть элементов отсутствуют, или в них есть неполадки, программы, которые используют битые элементы, начинают функционировать со сбоями или вообще не работают;
  2. Если пользователь поменяет настройки части таких элементов, то возможно, что зависящие от них программы просто перестанут функционировать:
  3. Файлы таких модулей уязвимы в связи с тем, что им даётся один адрес от ОС.

Указанная неисправность зависит от рабочего блока библиотеки. Это комплекс неких программ, необходимых для выполнения какой-либо операции на персональном компьютере (стационарном устройстве, ноутбуке, планшете). Иное название элемента – модуль. Каждый выполняет определенный набор функций. Например, открытие диалоговых окон или вычисление на калькуляторе. Это стандартные операции, для выполнения которых программисты прописывают единый код.


Блоки динамического назначения DLL являются общими. Особенности элементов:

  • функционал может быть активирован несколькими приложениями одновременно;
  • загрузка происходит в автоматическом режиме после запроса программы;
  • такие модули не расходуют ресурсы ПК.

К недостаткам данного типа динамических библиотек относят следующие:

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


Исправляем данный сбой

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

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

3 окна

Разрядность приложения должна быть такой же, как у ОС (32 bit или 64 bit). Если вы установите элемент не той разрядности, то данный сбой не исчезнет. Те элементы, которые вы скачали, нужно переместить в определённые папочки ОС Виндовс — SysWOW64, System32. После этого, данные файлы требуют регистрации. Ниже я покажу, как это делается.

Причины возникновения

Причинами появления данной проблемы может быть ряд событий:

Регистрируем dll с помощью командной строки

запуск от имени администратора cmd

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

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

Обновление системы

Поиск обновлений

Центр обновлений

через выполнить

RegSvr32.exe C:\Windows\SysWOW64\thumbcache.dll (или путь по вашему адресу) и нажать ввод.

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

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

Библиотека не регистрируется

  1. Компонент скачан из ненадёжного источника. Скачивать их нужно только с проверенных сайтов.
  2. В случае если пользователь сам разработал библиотеку, то регистрировать ее нужно с помощью regasm.exe.
  3. Иногда помогает копирование нужного файла .dll в директорию с приложением, которое выдает ошибку.

DllRegisterServer не выполняет вызов из-за ошибки 0x80070005

Попробуем выключить контролирование учеток (UAC).

reg.exe ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v EnableLUA /t REG_DWORD /d 0 /f

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

Первый способ добавления — Прибегнем к помощи командной строки.



Ввод регистрации RegSvr32 через командную строку

  1. Жмем клавишу с нарисованным логотипом Windows и зажимаем R — Win+R.
  2. Появится новое окно. Прописываем regsvr32 и путь к библиотекам. ОК.

Настоятельно советуем ознакомится с рекомендациями от Microsoft по вопросу регистрации RegSvr32 в Windows и подробному порядку действий, так как существуют некоторые нюансы, связанные с разрядностью системы (x32, x64).

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

Производим перезагрузку ПК и проверяем, исчез ли сбой?

reg.exe ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v EnableLUA /t REG_DWORD /d 1 /f

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

Нужна опять перезагрузка.

Как DLL зарегистрировать в windows любой версии: несколько основных способов

Как DLL зарегистрировать в windows-системах простейшим методом?

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

При этом структура последовательности запуска программы и загрузки остальных компонентов в оперативную память такова, что почти все они стартуют из одного каталога. Таким образом, в самом простом варианте вопрос того, как зарегистрировать DLL в windows 10 или системах рангом ниже, решается за счет помещения необходимых файлов этого формата в директорию с главным исполняемым файлом программы (EXE). Но это годится только для тех случаев, когда сами библиотеки отсутствовали, но потом были загружены отдельно, например, из интернета.

К сожалению, вышеописанная методика срабатывает не всегда. Поэтому в windows нужно применять собственные средства и инструменты. В частности, все сводится к использованию программной службы RegSvr, которая представлена в виде файла regsvr32.exe, находящегося в одном из системных каталогов. В системах с архитектурой 32 бита этот компонент расположен в папке System32, а вот в 64-битных модификациях таких файлов может быть два (второй компонент расположен в папке SysWOW64).

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

Действия через командную строку

Возможные проблемы при регистрации

Иногда для регистрации средства windows использовать не нужно. Так для компонентов D3D, которые могут присутствовать в играх, достаточно просто установить обновленную версию DirectX, а для библиотек MSVC инсталлировать Microsoft Visual Studio Redistributable. В крайнем случае, если была использована пиратская взломанная копия программного продукта, в том же интернете следует найти официальную версию ПО и произвести необходимые действия заново (но как раз в этом случае такие процедуры могут и не потребоваться). Если предпочтение отдано неофициальной программе, загрузку нужно произвести с отключенным антивирусом и файрволом, но только при условии, что пользователь твердо уверен, что загружаемый контент полностью безопасен и не несет каких-либо потенциальных угроз компьютерной системе.

Из-за чего может не получиться зарегистрировать DLL?

Модуль загружен, но dllregisterserver не удалось найти точку входа 6 решений проблемы

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

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

Логика советчиков проста – без регистрации (или после повреждения точек входа) в реестре функции программы для Windows просто будут недоступны. Но все ли из вас понимают смысл процедуры и обязательность к её применению? В статье я хотел бы частично покрыть проблему, возникающую на данном этапе.

Что за RegSvr32?

RegSvr32 – консольная утилита Windows, позволяющая проводить регистрацию (равно как и аннулировать её) у объектов связывания/внедрения.

“Под замес”, таким образом, попадают некоторые DLL и ActiveX-управляющие элементы – программируемые компоненты-приложения с интерфейсом на базе OLE, позволяющие включать их в другие программы или приложения. С незапамятных времён они называются ActiveX элементы или “контрольки ActiveX”.

Там также есть его полное название и путь к самому файлу, который содержит в себе исполняющий код. Из него Windows и узнаёт о специальных и доступных функциях компонента, а также о том, как эти функции запускать (обращаться за исполнением кода).

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

И традиционно, если какая-то функция Windows обнаруживала свою недееспособность, пользователю всегда была доступна процедура регистрации или отмены регистрации сервера таких элементов. На самом деле, такая “деятельность” редко присуща конечным пользователям. Это дела разрабов ПО, но здесь Microsoft явно пошла нам навстречу, оставив возможность изменить отношение системы к какой-то программе вручную. С нашей помощью и помощью RegSvr32.

Порядок пере/регистрации элемента

Вы всегда можете попытаться провести ручную регистрацию DLL или OCX файлов из командной строки от имени администратора:

Обратная операция выполняется с добавлением флага u:

regsvr32 /u путь-к-файлу/имя-файла

Суть обеих операций – обращение к серверам DllRegisterServer / DllUnregisterServer внутри этих DLL с целью зарегистрировать файл или удалить сведения о нём из реестра. Т.е. создавая в реестре новые пути или, наоборот, удаляя их из него.

У вас 32-х или 64-х разрядная версия?

Здесь путаница в использовании собственных средств системы будет жить, думаю, вечно. Наиболее частая в нашем случае связана именно с попыткой регистрации 32-х битного приложения в 64-битной Windows. Но здесь всё просто. Если вам нужно зарегистрировать библиотечку 32-х в 64-х битной Windows, команда регистрации через regsvr32 примет вид:

Мы, таким образом, заставляем консоль “заработать утилиту” из папки, которая, несмотря на своё название (SysWoW64), как раз и работает с 32-х битными версиями программ. Но стоит ли подключать к решению проблемы с Windows регистратор RegSvr32?

И правда, надо ли?

Модуль ” * ” загружен, но точка точка входа не найдена…

И серьёзным подспорьем пользователю в этом вопросе могла бы послужить программа DLL Export Viewer от NirSoft, с помощью которой можно было бы проверить наличие серверов DllRegisterServer и DllUnRegisterServer в собственной библиотеке. Возьмём пример DLL-файла из рисунка, заявляющего о невозможности зарегистрировать пресловутый steam_api.

а где же сервера?

Как видите сами, у файла и возможности-то такой нет. В отличие, например, от этого:

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

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

И, перед тем, как вы приступите к более детальному изучению своего вопроса, присмотритесь к другим “советам”, которые вам, скорее всего, не помогут. И вот почему:

  • “регистрируем через regsvr32” – это невозможно, и мы уже поняли почему;
  • “попробуйте запустить приложение из другой учётной записи”, создав ту заново – а что, функция в DLL-файле волшебным образом появится заново? Если ошибка не связана с правами доступа, это не поможет. Windows ведь одна на всех.
  • “попробуйте чистую загрузку Windows” – да регистрации не мешают другие программы и драйвера;
  • “чиним систему через sfc /scannow” – от этого инструмента, как он ни хорош, ждать много в нашем случае не приходится. К сожалению, вручную прописать функции сервера он не сможет, доступа к сторонним файлам у него нет.

Так в чём проблема?

В вашем случае – не смею догадываться. Однако на моём опыте это был почти всегда либо кривой либо несовместимый с данной версией Windows файл.

Нередко с этой проблемой будут сталкиваться пользователи именно Windows 10, для большинства из которых W10 – целостная система, время от времени изменяющая свой вид. Ан нет. С полугодичными обновлениями мы получаем зачастую именно обновлённую систему.

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

Вариант решения проблемы с самим файлом частично предложен в статье Что такое dll, и почему их в Windows не хватает? Однако вопрос с “ошибкой” регистрации вас волновать в описанной форме более, думаю, не должен.

Читайте также: