Модуль." библиотека DLL" загружен, но точка входа не найдена

У меня есть DLL, которые вызывают ошибку при запуске приложения. Ошибка говорит, что служба не зарегистрирована. Поэтому я запускаю команду regsvr32 с именем библиотеки DLL. Но это дает мне ошибку, теперь ошибка:

мыши mydll модуль '.dll "была загружена, но точка входа "DllRegisterServer" не найдена.

убедитесь, что ' mydll.dll " является допустимым файлом DLL или OCX, а затем повторите попытку

Я работал над 64-разрядной версией Windows 7. На Windows XP работает отлично!. Кто-нибудь знает, что это может быть? Спасибо!

4 ответов


ошибка указывает, что DLL либо не является COM DLL, либо она повреждена. Если это не COM DLL и не используется в качестве COM DLL приложением, то нет необходимости регистрировать его.
От того, что вы говорите в своем вопросе (the service is not registered) кажется, что мы говорим о неправильно установленной службе. Я попытаюсь переустановить приложение.


у меня была эта проблема и

dumpbin /exports mydll.dll

и

depends mydll.dll

показал 'DllRegisterServer'.

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


то, что решило это для меня, использовало:

regasm.ехе 'xx.dll' /в TLB /codebase в /реестр

однако, важно понимать разницу между regasm.exe и regsvr.exe:

в чем разница между RegAsm.exe и regsvr32? Как создать файл tlb с помощью regsvr32?


Я нашел ответ: Мне нужно добавить новое приложение к компонентам службы на моем компьютере, а затем добавить правильные DLL.

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