已加载**dll 但没有找到DllregisterServer输入点 无法注册这个文件错误

在测试regsvr32注册组件功能时,发现有这种警告提示:已加载**.dll,系统提示没有找到DllregisterServer输入点,无法注册这个文件。
对这方面的问题还不是太清楚,于是查找了一下,相关解释如下:

并不是所有的DLL都能注册,大多数DLL都是通过导出函数提供功能,只有那些遵循COM的DLL才能用RegSvr注册。

DLL有两种,一种是标准DLL,另一种是ActiveX DLL。只有ActiveX DLL中包括DllRegisterServer函数,才能进行注册。而标准的DLL虽然可以

被VB等工具调用,但无法使用RegSvr32注册。标准DLL和ActiveX DLL的调用完全不同。

不过对于一些可以注册地dll组件也出现这个问题,就有可能是注册表里的相关设置被其他已卸载软件或者病毒等修改了。这时可参考如下方法

解决:

开始菜单-运行-输入msconfig回车
在里边的启动栏里把**.dll前面的勾去掉就行了
1、开始——运行——msconfig——启动——把加载项***.dll的那个勾勾去掉。 重启电脑,通常到这就可以了,如果还弹出来再进行第二步
2、开始——运行——regedit 在下面的位置删除相应键值: HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRun
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRun

或者打开注册表编辑器 ,在编辑→查找中,输入出错文件名,把搜到的删除,按F3键,搜索下一个,直到删完所有的为止。

dll因为某些原因(最大的可能是因为它是个病毒或流氓软件的dll文件,被杀软删除了)丢失了,但其相关的注册信息却还在,导致系统开机

时还加载它,却又找不到它的文件,所以报错。

点赞 (5)

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

Captcha Code