返回列表 发帖

[技术文章] 操作系统最棒的修复工具regsvr32.exe

文件regsvr32用法及情况介绍
  使用过activex的人都知道,activex不注册是不能够被系统识别和使用的,一般安装程序都会自动地把它所使用的activex控件注册,但如果你拿到的一个控件需要手动注册怎么办呢?如果修改注册表那就太麻烦了,在windows的system文件夹下有一个regsvr32.exe的程序,它就是windows自带的activex注册和反注册工具。
   一、regsvr32的用法为:
  “regsvr32 [/n] [/i(:cmdline)] dllname”。其中dllname为activex控件文件名,建议在安装前拷贝到system文件夹下。
  参数有如下意义:
  /u——反注册控件
  /s——不管注册成功与否,均不显示提示框
  /c——控制台输出
  /i——跳过控件的选项进行安装(与注册不同)
  /n——不注册控件,此选项必须与/i选项一起使用
   执行该命令的方法:
1、可以在“开始”--“运行”,调出运行的对话框,也可以使用win+r热键,然后直接在输入栏输入即可
2、在开始--运行 输入cmd,调出‘命令提示符’窗口,然后再执行regsvr32命令。

   二、regsvr32错误消息的说明
   当使用 regsvr32.exe 时,它会尝试加载该组件并调用它的 dllselfregister 函数。如果此尝试成功,regsvr32.exe 会显示一个指示成功的对话框。如果此尝试失败,regsvr32.exe 会返回一条错误消息,其中可能会包括一个 win32 错误代码。
   以下列表介绍了 regsvr32 错误消息和可能的原因。  
unrecognized flag:/invalid_flag
键入的标志或开关组合无效(请参阅本文中的“regsvr32.exe 的用法”一节)。  
no dll name specified.
未包括 .dll 文件名(请参阅本文中的“regsvr32.exe 的用法”一节)。  
dllname was loaded, but the dllregisterserver or dllunregisterserver entry point was not found.
dllname 不是 .dll 或 .ocx 文件。例如,键入 regsvr32 wjview.exe 就会生成该错误消息。  
dllname is not an executable file and no registration helper is registered for this file type.
dllname 不是可执行文件(.exe、.dll 或 .ocx)。例如,键入 regsvr32 autoexec.bat 就会生成该错误消息。
dllname was loaded, but the dllregisterserver or dllunregisterserver entry point was not found.
dllname 可能未导出,或者内存中可能有损坏的 dllname 版本。请考虑使用 pview 来检测该文件并删除它。  
dllname is not self-registerable or a corrupted version is in memory.
例如,键入 regsvr32 icwdial.dll 后就会返回该错误消息,因为 icwdial.dll 文件不能自行注册。
如果您怀疑内存中有损坏的 dllname 版本,请尝试重新启动计算机,或重新提取该文件的原始版本。
如果您运行的是 windows nt,可能需要使用 microsoft windows nt server 4.0 资源工具包 中的 kill 或 pview 工具。有关其他信息,请单击以查看以下 microsoft 知识库文章:  197155 如何终止孤立进程  
oleinitialize failed (or oleuninitialize failed).
regsvr32 必须先初始化 com 库,然后才能调用所需的 com 库函数并在关闭时撤消对该库的初始化。
如果对 com 库进行初始化或撤消初始化的尝试失败,就会出现这些错误消息。例如,ole32.dll 文件
可能已经损坏,或者其版本有误。  
loadlibrary("dllname") failed.getlasterror returns 0x00000485
在 winerror.h 中,0x00000485 = 1157 (error_dll_not_found),表示“找不到运行该应用程序所需的某个库文件”。例如,键入 regsvr32 missing.dll 后,如果找不到 missing.dll 文件,就会返回该错误消息。  
loadlibrary("dllname") failed.getlasterror returns 0x00000002
在 winerror.h 中,0x00000002 = 2 (error_file_not_found),表示“系统找不到指定的文件”。换言之,系统找不到相关的 dll。例如,如果键入 regsvr32 icwdial.dll,而此时缺少 tapi32.dll(依赖项),就会返回该错误消息。  
loadlibrary("dskmaint.dll") failed.getlasterror returns 0x000001f 在 winerror.h 中,0x000001f = 31 (error_gen_failure),表示“附加到系统上的设备不能正常工作”。如果您尝试注册 win16 .dll 文件,就会发生此现象。例如,键入 regsvr32 dskmaint.dll 会返回该错误消息。  
dllregisterserver (or dllunregisterserver)in dllname failed.返回代码是:字符串
在 winerror.h 中搜索字符串。  
regsvr32.exe 和依赖项
regsvr32.exe 依赖于 kernel32.dll、user32.dll 和 ole32.dll 文件(在 windows nt 中,还依赖于 msvcrt.dll 和 advapi32.dll 文件)。regsvr32.exe 会加载您尝试注册或撤消注册的文件及其所有依赖项。如果缺少必需的文件或者它们已损坏,该进程可能会失败。  
您可以使用 depends.exe 来确定您尝试注册或撤消注册的文件的依赖项。在 microsoft windows 98 资源工具包 和 microsoft windows nt 4.0 资源工具包 支持工具中都提供了 depends.exe。
247024 tools included with the microsoft windows 98 resource kit
   三、一个快速注册 dll 及 ocx 的方法
注意看罗!方法如下:
1、在资源管理器中找到 c:\windows\system\regsvr32.exe 并【复制】 ( 按鼠标右键选复制 )
2、将目录移到 c:\windows\sendto 后,执行【贴上快捷方式】 ( 按鼠标右键选贴上快捷方式 )
3、将快捷方式名称改成【register】
4、ok
现在,如果您想替某一个文件做注册动作,例如:c:\windows\system\test.ocx,您只要打开资源管理器,找到 c:\windows\system\test.ocx,按鼠标右键选【传送到】【register】即可完成注册动作了!
注:有一个地方要注意的是,regsvr32.exe 只能注册 32 位的文件!如果要用它来注册 16 位的文件,会有错误讯息产生。
一、轻松修复ie浏览器
regsvr32 shdocvw.dll
regsvr32 oleaut32.dll
regsvr32 actxprxy.dll
regsvr32 mshtml.dll
regsvr32 urlmon.dll
作用:
1、同时运行以上命令不仅可以解决ie不能打开新的窗口,用鼠标点击超链接也没有任何反应的问题;
2、还能解决大大小小的其它ie问题,比如网页显示不完整,java效果不出现,网页不自动跳转,打开某些网站时总提示‘无法显示该页’等。
二、解决windows无法在线升级的问题
regsvr32 wupdinfo.dll
作用:
windows的漏洞很多,每隔一段时间就需要使用“windows update”升级程序进行在线升级,不过“windows update”经常出现无法使用的情况,这时,我们可以使用regsvr32来解决这个问题。
三、防范网络脚本病毒有新招
regsvr32 /u scrrun.dll
作用:
网络脚本病毒嵌在网页中,上网时在不知不觉中机器就会感染上这种病毒。笔者认为单纯使用杀毒软件并不能有效地防范这些脚本病毒,必须从病毒传播的机理入手。网络脚本病毒的复制、传播都离不开fso对象(file system object,文件系统对象),因此禁用fso对象就能有效地控制脚本病毒的传播。
如果需要使用fso对象,键入“regsvr32 scrrun.dll”命令即可。
四、卸载win xp自带的zip功能
regsvr32 /u zipfldr.dll
作用:
win xp以功能强大而著称,但有些功能却常常令人有“鸡肋”之感,比如win xp自带的zip功能和图片预览功能,不仅占用了系统资源,功能也远不如第三方软件强大。其实用regsvr32命令可以很容易地卸载这些功能。
五、修复无法缩略图查看文件问题
2000: 开始→运行,输入regsvr32 c:\winnt\system32\thumbvw.dll
xp:    开始→运行,输入regsvr32 shimgvw.dll
六、让wmp播放器支持rm格式
  很多朋友喜欢用windows media player(以下简称wmp)播放器,但是它不支持rm格式,难道非得安装其它播放软件吗?笔者有办法。
  以win xp为例,首先下载一个rm格式插件,解压缩后得到两个文件夹: release(用于windows 9x)和release unicode (用于windows 2000/xp);将release unicode文件夹下的realmediasplitter.ax文件拷贝到“系统盘符\windows\system32\”目录下;在“开始→运行”中键入“regsvr32 realmediasplitter.ax”,点击“确定”即可。接着下载解码器,如real alternative,安装后就能用wmp播放rm格式的影音文件了。
七、让wmp9的播放器出现
有些音乐网页的在线点歌需要用到media player,有的朋友明明安装了wmp9,但在线听音乐却只看到枯燥的wmp6播放器面板,想让漂亮的wmp9面板出现,当然没问题的。
常见问题的操作系统多数win 98,先关闭ie,再在“开始→运行”中键入“regsvr32 wmpdxm.dll”,点击“确定”即可。
八、解决打开系统功能时无反应
regsvr32 shdocvw.dll
作用:
有时从开始菜单里点击xp系统的搜索功能、帮助和支持或管理工具等,但就是无任何反应,这是它们的打开方式缺少关联,所以我们只要用regsvr32注册它们需要调用的动态连接库文件就行了。
九、添加/删除程序打不开了
regsvr32 appwiz.cpl
regsvr32 mshtml.dll
regsvr32 jscript.dll
regsvr32 msi.dll
regsvr32 c:\program files\common files\system\ole db\oledb32.dll
regsvr32 c:\program files\common files\system\ado\msado15.dll
regsvr32 mshtmled.dll
regsvr32 /i shdocvw.dll
regsvr32 /i shell32.dll
作用:
当打开控制面板中的添加/删除程序时,双击它的图标后无反应,或者打开后自动关闭了,尝试使用以上命令可以解决。
猜不透的神秘命令 - regsvr32 jscript.dll

1、跟上面讲的修复ie浏览器方法配合使用,可以很好的解决浏览某些网页显示不完整,并且有可能解决ie状态栏显示‘网页上有错误’的提示。

2、跟命令regsvr32 vbscript.dll配合使用,修复个别窗口空白,如xp的‘搜索’功能的搜索助理操作面板空白及系统还原功能无法使用等。

3、解决windows media player 9或以上版本打开时提示‘出现内部应用程序错误’。

4、可以修复win 2000的‘添加/删除程序’打开后一片空白。
欢迎光临:逐梦论坛

执行该命令的方法:
1、可以在“开始”--“运行”,调出运行的对话框,也可以使用win+r热键,然后直接在输入栏输入即可
2、在开始--运行 输入cmd,调出‘命令提示符’窗口,然后再执行regsvr32命令。
我執行后..沒有 /c.其他的都有..
.·、′`;′ ` ; . ﹒ ﹒ ╞﹒.╞﹒.╞ ★〃愛情连接 super°|周傑溣.& ------------------------------------------------ __用壹生d'時間|..陪伴妳...慧.&.筽 ‘X卌http://photo.163.com/photos/jixianghuihui521

TOP

返回列表

Powered by Discuz! 7.2   论坛QQ群:逐梦论坛群

© 2001-2021 Comsenz Inc. 鲁公网安备 37120302000001号