Пользователи спрашивают о том, как зарегистрировать dll файл в Windows 7 и 8. Обычно после того, как столкнулись с ошибками наподобие «Запуск программы невозможен, так как нужная dll отсутствует на компьютере». Об этом и поговорим.
На самом деле, регистрация библиотеки в системе не такая уж и сложная задача (покажу целых три вариации одного способа) — по сути, необходим лишь один шаг. Единственное обязательное требование — наличие у вас прав администратора Windows.
Однако есть некоторые нюансы — например, даже успешная регистрация DLL не обязательно избавляет вас от ошибки «библиотека отсутствует на компьютере», а появление ошибки RegSvr32 с сообщением о том, что модуль не совместим с версией Windows на этом компьютере или точка входа DLLRegisterServer не найдена, не говорит о том, что вы что-то делаете не так (о чем это говорит разъясню в конце статьи).
Три способа регистрации DLL в ОС
Описывая дальнейшие шаги, я исхожу из того, что вы нашли, куда нужно скопировать вашу библиотеку и DLL уже лежит в папку System32 или SysWOW64 (а возможно, где-то еще, если ей там следует находиться).
Примечание: ниже будет описано, как зарегистрировать DLL библиотеку с помощью regsvr32.exe, однако обращаю ваше внимание на то, что если у вас 64-разрядная система, то у вас есть два regsvr32.exe — один в папке C:WindowsSysWOW64, второй — C:WindowsSystem32. И это разные файлы, причем 64-бит находится в папке System32. Рекомендую в каждом из способов использовать полный путь к regsvr32.exe, а не просто имя файла, как у меня показано в примерах.
Первый способ описывается в Интернете чаще других и состоит в следующем:
После этого, если все прошло успешно вы должны будете увидеть сообщение о том, что библиотека была успешно зарегистрирована. Но, с большой вероятностью увидите другое сообщение — Модуль загружен, но точка входа DllRegisterServer не найдена и стоит проверить, что ваша DLL является правильным файлом (об этом, как я уже говорил, напишу позже).
Второй способ состоит в запуске командной строки от имени администратора и ввода все той же команды из предыдущего пункта.
Опять же, вероятно, что вам не удастся зарегистрировать DLL в системе.
И последний способ, который также может пригодиться в некоторых случаях:
Суть всех описанных способов зарегистрировать DLL в системе одна и та же, просто несколько разные способы запуска одной и той же команды — кому что удобнее. А теперь о том, почему у вас ничего не получается.
Почему не удается зарегистрировать DLL
Итак, у вас отсутствует какой-то файл DLL, из-за чего при запуске игры или программы вы видите ошибку, вы скачали этот файл из Интернета и пробуете зарегистрировать, но либо точка входа DllRegisterServer, либо модуль не совместим с текущей версией Windows, а может и что-то еще, то есть регистрация DLL невозможно.
Почему это происходит (далее будет и про то, как это исправить):
А теперь о том, как это исправить:
На этом завершаю, надеюсь, что-то стало более ясно, чем было.
Ваш IT помощник
Операционная система Windows при установке ее на компьютер может становиться не совсем корректно. Последствиями таких ошибок в Windows 7/8/10 становятся выскакивающие уведомления от RegSvr32, указывающие что модуль загружен, а точка входа dllregisterserver не найдена. Также возможны ошибки «не удалось выполнить вызов dllregisterserver«, сопровождающиеся кодами ошибок (0x80004005, 0x80070005, 0x8002801c, 0x80020009 и другие). Они появляются при попытках запуска любых приложений, а также игр. Точка входа не может быть найдена данной программой по причине отсутствия библиотек или их регистрации. Если сказать проще: ярлык на рабочем столе находится вне зависимости от своего утилита, поэтому его активация не происходит.
Суть ошибки библиотеки
Windows (7/8/10) для образования связей с отдельными от нее программами применяет файлы .dll. Эти библиотеки содержат все необходимые коды. Если эти коды отсутствуют или прописаны неверно, то пользователю выдается сообщение «Точка входа dllregisterserver не найдена».
Рассмотрим некоторые первоисточники проблемы, ведь помимо некорректной установки операционной системы существует еще несколько причин:
Как исправить ошибку dllregisterserver?
В основном, все решение сводится к скачиванию и регистрации в RegSvr32 отсутствующей библиотеки (она указана в окошке с сообщением).
Первый способ добавления — Прибегнем к помощи командной строки.
Ввод регистрации RegSvr32 через командную строку
Второй способ добавления — наиболее простой. Все что нужно — это вызвать путеводитель «Выполнить».
Настоятельно советуем ознакомится с рекомендациями от Microsoft по вопросу регистрации RegSvr32 в Windows и подробному порядку действий, так как существуют некоторые нюансы, связанные с разрядностью системы (x32, x64).
Напоследок следует напомнить – никогда не качайте модули библиотеки .dll из неофициального сайта. Под их видом часто распространяют вирусы. В лучшем варианте они просто могут не подходить. Всегда проверяйте источники на качественный контент и знакомьтесь с комментариями.
Время от время пользователи любой ОС Windows могут столкнуться с ошибкой 0x8002801c во время регистрации в системе OCX-файла при использовании regsrv32. В данной статье мы рассмотрим с вами, как можно устранить эту проблему и продолжить пользоваться своим компьютером как обычно. Примеры будут рассматриваться на Windows 10 и библиотеке mscomct2.ocx. Разумеется, если в вашем случае применяется иная библиотека, то проводите нижеуказанные манипуляции с ней.
Руководство по решению ошибки 0x8002801c
В первую очередь вам нужно открыть перед собой Командную строку с правами администраторской учетной записи операционной системы. Чтобы сделать это, нажмите правой кнопкой мыши на Пуск и выберите из контекстного меню пункт «Командная строка(администратор)».
Шаг №2
Открыв Командную строку, впишите в нее команду regsrv32 mscomct2.ocx и нажмите на Enter. После нажатия на кнопу ввода перед вами, скорее всего, появится окошко с ошибкой с кодом 0x8002801c, в которой будет указано, что модуль «cwindowssystem32mscomct2.ocx» был загружен, но при запросе к DllRegisterServer возникла ошибка 0x8002801c.
Шаг №3
Закройте окошко с ошибкой, а затем перейдите в директорию CWindowssystem32. Теперь впишите в поисковую строку проводника библиотеку mscomct2.ocx и нажмите Enter. Как только библиотека будет обнаружена, нажмите на нее правой кнопкой мыши и выберите «Копировать».
Шаг №4
Теперь пройдите в директорию CWindowssysWOW64 и вставьте файл mscomct2.ocx из буфера обмена прямо в папку. Как только файл будет вставлен в папку, снова откройте Командную строку с правами администраторской учетной записи и выполните в ней команду regsrv32 mscomct2.ocx. После выполнения команды перед вами появится окошко, в котором будет указываться, что библиотека mscomct2.ocx была успешно зарегистрирована в операционной системе.
Перезагрузите свой компьютер и убедитесь, что проблема была устранена. Напоминаем, что в вашем случае может возникать проблема с иной библиотекой. Мы надеемся, что данный материал помог вам избавиться от ошибки 0x8002801c и вы продолжили использовать свою систему как и полагается.
Как исправить ошибку 0x8002801c на Windows 10?
Открыв Командную строку, впишите в нее команду regsrv32 mscomct2.ocx и нажмите на Enter. После нажатия на кнопу ввода перед вами, скорее всего, появится окошко с ошибкой с кодом 0x8002801c, в которой будет указано, что модуль “cwindowssystem32mscomct2.ocx” был загружен, но при запросе к DllRegisterServer возникла ошибка 0x8002801c.
Ошибка регистрации сервера Dll Код ошибки
Обновление: Перестаньте получать сообщения об ошибках и замедляйте работу своей системы с помощью нашего инструмента оптимизации. Получите это сейчас на эту ссылку
Запуск кода ошибки Windows 0x8002801c (TYPE_E_REGISTRYACCESS. Эта ошибка связана с ошибкой доступа к реестру OLE.) Может замедлить ваш тег. Поиск в этом руководстве поможет вам решить проблему с регистрацией раз и навсегда.
Когда вы пытаетесь сохранить файлы OCX в Windows, вы можете увидеть этот код ошибки, особенно если вы используете метод командной строки для использования regsvr32.
Либо повреждение, либо отсутствие файла реестра могут быть одной из основных причин ошибки 0x8002821C, либо существует конфликт во всей вашей компьютерной системе, который препятствует доступу операционной системы к необходимым загрузочным файлам или правильной загрузке файлов.
Это, конечно, не смешно, если ваш компьютер внезапно отображает сообщение об ошибке или перестает отвечать на ваш ввод. Сложный перезапуск может творить чудеса с компьютерной системой, но он не всегда решает проблемы. Эти досадные ошибки не только замедляют работу компьютера, но иногда могут сделать его практически непригодным для использования.
Как исправить ошибку 0x8002801C под Windows:
Исправить код ошибки 0x8002801C после сбоя регистрации файла OCX
Это и есть. Это и есть. Вы можете использовать эти четыре шага, чтобы предоставить соответствующие разрешения любому файлу OCX, который вызывает код ошибки 0x8002801. В большинстве случаев вы можете использовать его для регистрации компонента ActiveX и решения проблемы.
Использовать восстановление системы
Примечание: пожалуйста, сделайте резервную копию журнала перед сменой авторизации.
CCNA, веб-разработчик, ПК для устранения неполадок
Я компьютерный энтузиаст и практикующий ИТ-специалист. У меня за плечами многолетний опыт работы в области компьютерного программирования, устранения неисправностей и ремонта оборудования. Я специализируюсь на веб-разработке и дизайне баз данных. У меня также есть сертификат CCNA для проектирования сетей и устранения неполадок.
Крайне неприятная ошибка в Windows «Модуль загружен, но точка входа DLLRegisterServer не найдена» связана, как правило, с некорректным функционированием динамически подключаемой библиотеки (сокр., «.dll»), к которой обращается программа в процессе своей работы. В результате встроенный в Windows процесс отвечающий за регистрацию библиотеки в ОС, отказывается ее принять либо не может найти. А программа, обращающаяся к неработающим модулям, соответственно, не функционирует. Потому, предлагаю разложить по полочкам данную проблему для того, чтобы понять, каким образом ее можно исправить.
Сообщение о проблеме на экране компьютера
В чём суть ошибки «Модуль загружен, но точка входа DLLRegisterServer входа не найдена»?
Итак, объяснение смысла данной ошибки закономерно будет начать с определения «библиотеки«. Библиотека или в некоторых языках программирования, модуль (модули) — это набор подпрограмм, используемых в разработке программного обеспечения. Проще говоря, это совокупность небольших и независимых блоков, каждый из которых является функционально законченным фрагментом кода.
Для чего они предназначены? Существует огромное количество подпрограмм или процедур, выполняющих самые разные задачи. Некоторые из них содержат стандартные для многих программ вычислительные операции. К примеру, открытие диалоговых окон в Windows или нахождение квадратного корня из любого числа — это стандартные, часто встречающиеся процедуры. Так вот, чтобы не писать код таких подпрограмм каждый раз при создании ПО, были придуманы заранее заготовленные файлы, которые получили название «библиотеки». С помощью специальной функции их можно подключить к программе, при этом исполнимый код этой библиотеки не будет внедряться в код приложения, что позволяет сэкономить память ПК.
К сожалению, у DLL модулей есть и недостатки. Не будем говорить о так называемом «DLL Hell», так как на данный момент, несмотря на нарушение самого идейного принципа динамических библиотек общего пользования, разработчики Microsoft разрешили эту проблему. Гораздо важнее в данной статье отметить следующие недостатки:
Теперь о том, что такое точка входа. Точкой входа называется адрес в оперативной памяти, по которому хранится первая команда программы. На самом деле, функций в одной библиотеке может быть несколько и каждая из них имеет свою точку входа, к которой и обращается процесс, вызывающий определенную подпрограмму.
Таким образом, скомпоновав все вышеописанное в единое целое, мы можем раскрыть суть ошибки «Модуль загружен, но точка входа DLLRegisterServer входа не найдена». Эта проблема возникает при регистрации библиотеки в системе. Процесс «Regsvr32.exe», отвечающий за инсталлирование интерфейсов объектов в ОС, не может обнаружить функцию регистрации библиотеки «DLLRegisterServer» в проблемном dll.
Исправляем проблему при которой модуль загружен, но точка входа DLLRegisterServer не найдена
Точка входа в библиотеку thumbcache.dll не найдена
Скачиваем библиотеки dll
Скачивая библиотеки, обязательно вначале уточните разрядность вашей версии Windows (х32/ х64). Если вы найдете и установите неподходящие файлы dll, ошибка “Модуль загружен, но точка входа DLLRegisterServer не найдена” исправлена не будет. Разместите скачанные вручную файлы в папках SysWOW64 и System32, находящихся C:Windows.
Регистрируем библиотеки dll
В случае, когда библиотека на компьютере в полном порядке, но точка входа все равно не найдена, попробуем зарегистрировать dll в RegSvr32. Рассмотрим пути избавления от проблемы на основе вышеуказанного изображения. Регистрируем файл thumbcache.dll, находящийся C:WindowsSysWOW64. Первый способ – вызвать командную строку и ввести нужные данные:
Регистрация библиотеки dll через командную строку
Нажимаем Enter и ждем окончания процесса регистрации библиотеки. Если данный метод не помогает, попробуйте повторить те же действия, но уже в командной строке от имени администратора. Возможно, вам не хватает прав для внесения изменений в систему.
Второй способ – использовать строку “Выполнить”:
Регистрируем dll через строку «Выполнить»
Устанавливаем обновления для Windows
Способ, к которому можно обращаться уже после того, как вышеуказанные методы не принесли желаемого результата – обновление компонентов вашей ОС. Для этого найдите на своем компьютере Центр обновления. Просмотрите все доступные обновления и прогрузите их. Процесс долгий, но необходимый. Быть может, проблема была в изначально неправильном коде dll-файлов, и разработчики уже нашли решение на своем уровне. Не выключайте соединение с интернетом и сам ПК во время установки обновлений, иначе результата не будет. Убедитесь, что все файлы прогружены и при необходимости повторите операцию.
Рассматриваемая нами ошибка может появляться не только в последней ОС Windows, но и в других версиях. Поэтому, следуя инструкциям, вы сможете устранить эту проблему и на своем ПК с Виндовс XP, 7 или 8.1. Для того, чтобы найти установленные системой обновления, необходимо открыть «Удаление программ».
Когда вы снова включите компьютер, попробуйте запустить программу, которая вызывала ошибку – точка входа в процедуру DLLRegisterServer не обнаружена в библиотеке dll. Если она снова появляется, перейдите к следующей инструкции.
Thank you very much
Question Info
Please provide us the below information to assist you further.
3 people were helped by this reply
Did this solve your problem?
Sorry this didn’t help.
Great! Thanks for marking this as the answer.
How satisfied are you with this reply?
Thanks for your feedback, it helps us improve the site.
How satisfied are you with this response?
Thanks for your feedback.
I put the msflxgrd.ocx file into the C:windowssysWOW64 folder.
I ran «regsvr32 c:windowssysWOW64msflxgrd.ocx» and got the message that the file was loaded but the DII Register Server failed with 0x8002801c error code.
20 people were helped by this reply
Sorry for the inconvenience caused.
Method 1: Run the SFC.
Method 2: Run the DISM Tool.
If the issue persists, I would have you run the DISM tool to check the system health and will try to restore the files.
Note: The tool might take 15-20 minutes to finish running, so please do not cancel it.
Код ошибки 0x8002801c при регистрации dll
На это есть альтернативный вариант с помощью командной строки операционной системы. Забегая немного вперед, и чтобы обезопасить себя от ошибок при регистрации com-компоненты comcntr.dll через командную строку, подобных приведенной на скрине
Чтобы избежать ошибки «Модуль comcntr.dll загружен, но не удалось выполнить вызов DllRegisterServer, код ошибки 0x80070005» запускайте командную строку с правами администратора
А дальше уже все зависит от разрядности операционной системы, в которой Вы хотите зарегистрировать компоненту com-соединения 1C: Предприятия.
В системе с разрядностью x32(x86) для платформы 1С: Предприятие 8.2
, где — номер текущего используемого релиза плафтормы 1С 8.
Для платформы 1С: Предприятие 8.3 командная строка для регистрации com-компоненты будет выглядеть примерно так:
, на скрине, приведенном ниже в качестве прbмерf для случая регистрациb comcntr.dll в ОС x86 значение — «8.3.9.1818»
Теперь рассмотрим вариант для системы с разрядностью x64 для платформы 1С: Предприятие 8.2, альтернативный вариант:
Для Windows x64 регистрация com-соединения 1С 8.3 платформы разрядности x64 может выглядеть так:
ИЛИ как в примере для случая x64-разрядной операционной системы Windows
В том случае, если у Вас клиент-серверный вариант работы базы 1С 8, то необходимо зарегистрировать компоненту как на самом сервер, где установлен Агент сервера 1С:Предприятия, так и на рабочих местах на которых используется COM-соединение при подключении к базам (чаще всего при обмене между базами).
Так же на практике иногда требовалась перезагрузка рабочего компьютера. Но если сразу после успешной регистрации компоненты по приведенным выше инструкциям соединение отказывается работать, то лучше все-таки выполнить перезагрузку.
Блог о модемах, роутерах и gpon ont терминалах.
Как зарегистрировать библиотеку dll в Windows 10
Итак, Вы скачали из Интернета нужный модуль, распаковали из архива и теперь возникает совершенно логичный вопрос — а куда кидать DLL в систему?! Во первых, сначала надо определить разрядность системы, так как в 32-битной для этой цели используется одна папка, а в 64-битной — другая. Делается это очень легко. Кликаем правой кнопкой на значке «Этот компьютер» на рабочем столе и в меню выбираем пункт «Свойства». В появившемся окне находим строчку «Тип системы» и смотрим что там написано:
То же самое можно посмотреть и через командную строку, введя команду systeminfo. Она выведет всю информацию о установленной ОС Виндовс, и в строке «Тип системы» будет указана её разрядность.
Ну а дальше всё просто:
Вот именно сюда и надо устанавить ДЛЛ-файл. Здесь %windir% — это переменная окружения, указывающая путь к системной директории, в которой располагаются все важные компоненты Виндовс. Проще говоря, если операционная система установлена на диске С:, то путь к нужным папкам будет C:WindowsSystem32 для 32-разрядной и C:WindowsSysWOW64 для 64-разрядной.
Регистрация DLL в Windows
Теперь самое интересное — как зарегистрировать библиотеку dll в Windows. Нажимаем кнопку Пуск правой кнопкой мыши и выбираем в контекстном меню пункт «Выполнить»:
Того же самого эффекта можно достигнуть нажав комбинацию клавиш WIN+R. Повявится вот такое окно «Выполнить»:
В строку «Открыть» надо ввести вот такую команду:
В качестве примера давайте зарегистрируем библиотеку runtime.dll для 32-хбитной версии Windows 10. команда будет такой:
Нажимаем на кнопку «ОК» и ждём что нам ответит система. Если всё правильно — она просто «съест» файл. Но случается и ошибки. Вот самая распространённая:
Связана она либо с ошибкой в пути или имени файла, либо с неправильно выбранной папкой, в которую была скопирована ДЛЛ-ка для регистрации. Стоит ещё раз всё тщательно проверить.
Навигация по записям
Ну хорошо! А почему для 64 битной не написали пример пути регистрации? Вот куда закинуть написали, а как зарегистрировать только для 32.
Так подставляйте папку в пример и всё. Проще некуда.
неплохо бы напомнить, что и resvr32.exe существует в 2-х экземплярах (разной разрядности). и что dll-ки бывают разной разрядности! и что 64-х битную dll в 64-х битной винде надо кидать в system32, а не в syswow64
На самом деле не то чтобы пробовал — по роду деятельности приходится достаточно часто разные самописные библиотеки регистрировать. И как бы без проблем. Написал, скомпилировал, подключил.
» Для Windows 10 x32: %windir%system32 Для Windows 10 x64: %windir%SysWOW64 » Всё ровно наоборот!
Игорь, Вы путаете. Дело в том, что в 32-х разрязной Windows динамические библиотеки лежат как раз в папке system32. В 64х разрядной библиотеки 64х программ лежат в System32, а 32х разрядных приложений в sysWOW64. Потому в 90% случаев и нужно в Windows 10 x64 класть библиотеки в папку sysWOW64. Надеюсь, что понятно объяснил.
Модуль «CWindowsSysWOW64task_force_radio_win64.dll» загружен,но точка входа DllRegisterServer не найдена. Проверьте, что «C:WindowsSysWOW64task_force_radio_win64.dll» является правильным файлом DLL или OCX и повторите попытку.
The error 0x8002801c occurs when there’s a problem accessing the OLE (Object Linking and Embedding) registry. Insufficient system permissions will trigger this error code when the registration of an OCX (OLE control extension) file fails to complete. This is known to happen frequently when using regsvr32 via Command Prompt on Windows 7.
It’s a common occurrence to see this error code when trying to register an OCX file from C: Windows system 32. Most of the time, the call to the DLLRegisterServer fails because of a permission problem and has nothing to do with the actual OCX component that you are trying to register.
That’s it. You can use these four steps to grant proper permissions to any OCX file that is causing the 0x8002801c error code. Most of the time it will allow you to register the ActiveX component and eliminate the issue.