The module “.dll” was loaded but the entry-point was not found

╄→尐↘猪︶ㄣ 提交于 2019-12-06 18:58:37

问题


I have a DLL which cause to an error when I run the application. The error says that the service is not registered. So I run command regsvr32 with the name of the DLL. But it gives me an error, now the error is:

The module 'mydll.dll' was loaded but the entry-point 'DllRegisterServer' was not found.

Make sure that 'mydll.dll' is a valid DLL or OCX file and then try again

I worked on Windows 7 64-bit. On Windows XP it works fine!. Does someone know what it can be? Thanks!


回答1:


The error indicates that the DLL is either not a COM DLL or it's corrupt. If it's not a COM DLL and not being used as a COM DLL by an application then there is no need to register it.
From what you say in your question (the service is not registered) it seems that we are talking about a service not correctly installed. I will try to reinstall the application.




回答2:


I had this problem and

dumpbin /exports mydll.dll

and

depends mydll.dll

showed 'DllRegisterServer'.

The problem was that there was another DLL in the system that had the same name. After renaming mydll the registration succeeded.




回答3:


What solved it for me was using :

regasm.exe 'xx.dll' /tlb /codebase /register

It is however, important to understand the difference between regasm.exe and regsvr.exe:

What is difference between RegAsm.exe and regsvr32? How to generate a tlb file using regsvr32?




回答4:


I found the answer: I need to add a new application to the service components in my computer and then add the right DLL's.

Thanks! If anyone has the same problem, I'll be happy to help.



来源:https://stackoverflow.com/questions/10227448/the-module-dll-was-loaded-but-the-entry-point-was-not-found

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!