IsaacZ 发表于 2010-6-16 20:34:53

用regsvr32注册DLL

【转贴】

用regsvr32注册DLL

很多系统错误是因为DLL文件没有注册造成的。系统dll文件没有注册,可能引起各种各样不可知的问题,比如无法打开二级链接,经常出现“内存不能为read或written”等错误。 Regsvr32是Windows中控件文件(DLL文件即属此类,此外还有OCX、CPL等文件)的注册和反注册工具,利用它可以快速解决很多常见问题。

regsvr32的命令形式为:regsvr32 [参数] xxx.dll

对普通用户最有用的参数是“/u”。

要注册某个DLL文件,就在“开始→运行”中输入“regsvr32 xxx.dll”。而要反注册它,则输入“regsvr32 /u xxx.dll”。比如在Windows XP中,在“开始→运行”中输入
regsvr32 %windir%\system32\zipfldr.dll /u
可以卸载系统自带的压缩功能。


Regsvr32应用进阶:

1. 一次注册或卸载多个DLL文件

要一次注册或卸载多个DLL文件,可采用批处理的方法来实现,不过注意加上“/s”参数(不显示注册成功对话框),如将a.dll、b.dll拷贝到系统文件夹的system32目录后,用记事本编辑如下内容:

regsvr32 /s a.dll
regsvr32 /s b.dll

将其保存为.bat 文件,运行后即可同时注册这两个DLL文件。

2. 一次注册系统中所有DLL文件

面对众多的由DLL文件引起的错误,如果不知道究竟谁是罪魁祸首又该怎么办呢?这时我们不妨把system32目录下所有的DLL文件全部注册一下,这样一来大多数问题都可以迎刃而解了。在“开始→运行”中输入“cmd”后回车,在“命令提示符”中输入如下命令即可:

for %1 in (%WinDir%\SYSTEM32\*.DLL) DO RegSvr32.EXE /s %1
(注意:不要在“开始——运行”框中运行这个命令,这样不会成功。)
为了便于使用,可以在记事本中输入该命令并将其保存为.bat批处理文件。以后再遇到一些由DLL文件引起的问题,双击运行它就可以了。

3. 把“注册”和“卸载”添加到DLL文件的右键菜单

打开注册表编辑器,找到子键,如果没有就新建一个。在其下新建名为“注册”的项,再在“注册”项下新建名为“command”的子项,并将其“默认”值修改为“regsvr32 %1”。这样系统DLL文件的右键菜单中就添加了“注册”命令。添加“卸载”命令跟上述方法类似,不过需将“command”值修改为“regsvr32 %1 /u”。

IsaacZ注:新手学着做时,最好复制粘贴上面的命令,不要手工敲,以免出错。

maldini_dick 发表于 2010-6-30 21:13:51

谢谢楼主,我已经收藏起来,很有用。
页: [1]
查看完整版本: 用regsvr32注册DLL