rundll加载时出错,找不到指定模块

来源:百度知道 编辑:UC知道 时间:2024/05/15 19:32:59
昨天升级了一下病毒库,并顺便杀了下毒(我用的是NOD32),结果重启机器发现无论我是打开桌面的“我的电脑”“网上邻居”“回收站”等快捷方式,还是浏览网页,都会出现一个“rundll加载 时出错,找不到指定模块”的对话框。(详见下图)
上网搜了下,发现很多人出现过我这个问题。搜了下问题原因与解决方案,无非以下几种:

(一)问题原因
1.杀毒后程序残留,或者系统文件被杀毒软件当作病毒杀掉了
2.rundll.exe丢失或者失效
(二)解决方式
1.XP系统运行msconfig命令,在启动里面把可疑程序前面的钩去掉,然后重启
2.使用regedit进入注册表,在run 下面把不用的程序都去掉
3.在注册表中运行“rundll”,把搜索到的键值都删掉
4.从正常的XP系统里面windows /system32里面复制一个rundll覆盖自己原来的文件
5.重装系统
——方法用尽(除重装外),可是还是去不掉。虽然不影响使用,可是每次都要点一下确定,烦人的很。苍天啊,大地啊,哪位大侠能帮我解决此问题,愿以20分相送。
PS:本人不想重装系统,如果不能提出建设性意见的话,就不要瞎支招了。

DLL是Dynamic Link Library的缩写,意为动态链接库。在Windows中,许多应用程序并不是一个完整的可执行文件,它们被分割成一些相对独立的动态链接库,即DLL文件,放置于系统中。当我们执行某一个程序时,相应的DLL文件就会被调用。一个应用程序可有多个DLL文件,一个DLL文件也可能被几个应用程序所共用,这样的DLL文件被称为共享DLL文件。DLL文件一般被存放在C:\Windows\System目录下。
1、如何了解某应用程序使用哪些DLL文件
右键单击该应用程序并选择快捷菜单中的“快速查看”命令,在随后出现的“快速查看”窗口的“引入表”一栏中你将看到其使用DLL文件的情况。
2、如何知道DLL文件被几个程序使用
运行Regedit,进入HKEY_LOCAL_MACHINE\Software\Microsrft\Windows\Current-Version\SharedDlls子键查看,其右边窗口中就显示了所有DLL文件及其相关数据,其中数据右边小括号内的数字就说明了被几个程序使用,(2)表示被两个程序使用,(0)则表示无程序使用,可以将其删除。
3、如何解决DLL文件丢失的情况
有时在卸载文件时会提醒你删除某个DLL文件可能会影响其他应用程序的运行。所以当你卸载软件时,就有可能误删共享的DLL文件。一旦出现了丢失DLL文件的情况,如果你能确定其名称,可以在Sysbckup(系统备份文件夹)中找到该DLL文件,将其复制到System文件夹中。如果这样不行,在电脑启动时又总是出现“***dll文件丢失……”的提示框,你可以在“开始/运行”中运行Msconfig,进入系统配置实用程序对话框以后,单击选择“System.ini”标签,找出提示丢失的DLL文件,使其不被选中,这样开机时就不会出现错误提示了。

如果你是98或XP系统:点开始---运行---输入msconfig----启动,在里面找到c:\windowns\system32\hkvl.dll,然后把它前面的勾去掉试试。 确认后会提示你是否重启机器,此时重不重启都可以,当你下次在开机时就不会出现该错误提示了