转:VB 6 在IE7以上版本机器上出现ieframe.dll 文件找不到问题

 

 

 
 

    用VB打开已存工程时弹出一个对话框:file not found c:\windows\system32\IEFRAME.dll\1 continue loading project 看到这个对话框习惯性觉得可能是ieframe.dll(工程里用到需要用到webbrower的Microsoft Internet Controls对象)丢失了,去c:\windows\system32目录下找时发现文件存,难道病毒破坏了,于是从用Acronis挂载C盘备份找到这个文件并复制出来,去覆盖C:\windows\system32下的文件时提示文件正在使用无法覆盖,心里感觉有点悬难道真的中病毒了吗?重启操作系统进安全模式,可以正常进入(中病毒可能比较轻安全模式还能进),将备份里的ieframe覆盖系统目录里的文件后重启系统打开工程时问题依然存在,郁闷!又看了一下弹出的对话框,发现这个路径就觉得有点不对头,难道system32里还有以 IEFRAME.dll命名的文件夹,一般都是调用数据链接库(dll)文件,那么那个“1”又是怎么回事呢? 
仔细想了一下前几天打开工程还没事的呀,期间打了一下补丁,难道是IE8补丁作祟。原来是IE8升级后把HKEY_CLASSES_ROOT\TypeLib\{EAB22AC0-30C1-11CF- A7EB-0000C05BAE0B}\1.1\0\win32下面的默认键值修改成C:\WINDOWS\system32\ieframe.dll \1了。这当然导致VB去找了一个不存在的文件。
这样就知道怎么做了,于是打开注册表找到对应的目录把那个键值改成C:\WINDOWS\system32\ieframe.dll退出注册表编辑器,再打开工程,一切恢复正常了,耶!

你可能感兴趣的:(frame)