无法找到VBScript脚本引擎或Error 2738,could not access vbscript runtime

来自:http://blog.sina.com.cn/s/blog_76af7f0f0101eoi2.html

原因是安装一些杀毒软件(如Mcfee,卡巴、瑞星等),改变了注册表中默认打开.vbs脚本的dll库。卸载杀毒软件后,注册表中这些信息仍没有被删除,所以导致打开.vbs脚本时,会去调用杀毒软件程序的dll库,才出现了此问题, 解决方法:

手动方法,我综合网上各种方法修改了以下两个注册表项(修改前请先备份或者设置系统还原)
我的系统是Windows7 64 bit,
“开始”->“运行”->“regedit”,找到项“HKEY_CLASSES_ROOT\CLSID\{B54F3741-5B07-11cf-A4B0-00AA004A55E8}\InprocServer32”,
将它的“默认”值改为“C:\Windows\system32\vbscript.dll”(不需要引号,此dll库才是windows中默认打开.vbs脚本的程序)。
在修改之前,要在项“InprocServer32”上右键选择“权限”,给你当前用户添加“完全控制”的权限,再修改即可解决此问题。 
这个值解决了开机时显示“无法找到VBScript脚本引擎”的错误
找到这个方法的时候我没有注意是64bit还是32bit,就照法删了以上的值。
后来又查看了一下HKEY_CLASSES_ROOT\CLSID\Wow6432Node\CLSID\{B54F3741-5B07-11CF-A4B0-00AA004A55E8}\InprocServer32 的值已经是正确的C:\Windows\SysWOW64\vbscript.dll
在卸载软件时报错,Error 2738,could not access vbscript runtime for custom action
则需要通过修改下面一个键值解决
HKEY_LOCAL_MACHINE\SOFTWARE\CLASSES\Wow6432Node\CLSID\{B54F3741-5B07-11cf-A4B0-00AA004A55E8}\InprocServer32.
把值改为"C:\Windows\SysWOW64\vbscript.dll"  同样需要先设置权限再修改
在修改以上两项时,都可以看到之前的默认dll库是之前卸载了的McAfee的残留项。


网上也有方法说可以通过删除以下键值解决,但我的情况里,没找到这两个键
Windows 64bit  系统下删除
HKEY_Current_User\SOFTWARE\Classes\Wow6432Node\CLSID\{B54F3741-5B07-11CF-A4B0-00AA004A55E8
然后进入cmd.exe 输入cd %windir%\syswow64
然后输入 regsvr32 vbscript.dll
 windows 32bit下删除
HKEY_Current_User\SOFTWARE\Classes\CLSID\{B54F3741-5B07-11CF-A4B0-00AA004A55E8
 然后进入cmd.exe   输入cd %windir%\system32
 然后输入       regsvr32 vbscript.dll
 
如果确定是McAfee 引起的,还有一个自动修复法,通过下载修复程序:
1.搜索"McAffe Consumer Product Removal Tool" 或"MCPR.exe".
2。运行MCPR.exe.
3。搜搜Microsoft Fix it 50842 或者 "MicrosoftFixit50842.msi". 下载链接http://go.microsoft.com/?linkid=9804433
4。运行MicrosoftFixit50842.msi.
5。重启并设置。
以上自动方法我没有使用,给需要的人留着试验。
参考链接http://answers.microsoft.com/en-us/windows/forum/windows_7-windows_programs/error-2738-could-not-access-vbscript-run-time-for/1a4499ae-8bc1-4534-9c6f-4d399ac70d9a
http://coldsummerwei.iteye.com/blog/940012

你可能感兴趣的:(其他)