CTOCIO IT专家网

天极传媒 比特网 | 天极网 | IT专家网 | IT商网 | 52PK游戏网 | 手机天极 | IT分众 |
IT专家网搜索

Regsvr32 的用法和错误信息说明

作者: 微软,  出处:IT专家网, 责任编辑: 刘志坡, 
2007-12-05 11:22
  对于那些可以自行注册的对象链接和嵌入 (OLE) 控件(例如动态链接库 (DLL) 文件或 ActiveX 控件 (OCX) 文件),您可以使用 Regsvr32 工具 (Regsvr32.exe) 来将它们注册和取消注册……

  例如,键入 regsvr32 icwdial.dll 后就会返回该错误信息,因为 Icwdial.dll 文件不能自行注册。如果您怀疑内存中有损坏的 Dllname 版本,请尝试重新启动计算机,或重新提取该文件的原始版本。如果您运行的是 Windows NT,可能需要使用 Microsoft Windows NT Server 4.0 资源工具包 中的 Kill 或 Pview 工具。有关其他信息,请单击以查看以下 Microsoft 知识库文章:

  197155 (http://support.microsoft.com/kb/197155/) 如何终止孤立进程

  OleInitialize 失败(或 OleUninitialize 失败)。

  Regsvr32 必须先初始化 COM 库,然后才能调用所需的 COM 库函数并在关闭时撤消对该库的初始化。如果尝试对 COM 库进行初始化或撤消初始化时失败,就会出现这些错误信息。比方说,Ole32.dll 文件可能已经损坏,或者其版本有误。

  LoadLibrary("Dllname") 失败。GetlastError 返回 0x00000485

  在 Winerror.h 中,0x00000485 = 1157 (ERROR_DLL_NOT_FOUND),表示“找不到运行该应用程序所需的某个库文件”。例如,键入 regsvr32 missing.dll 后,如果找不到 Missing.dll 文件,就会返回该错误信息。

  LoadLibrary("Dllname") 失败。GetLastError 返回 0x00000002

  在 Winerror.h 中,0x00000002 = 2 (ERROR_FILE_NOT_FOUND),表示“系统找不到指定的文件”。换言之,系统找不到相关的 DLL。例如,如果键入 regsvr32 icwdial.dll,而此时缺少 Tapi32.dll(依赖项),就会返回该错误信息。

  LoadLibrary("dskmaint.dll") 失败。GetLastError 返回 0x000001f

  在 Winerror.h 中,0x000001f = 31 (ERROR_GEN_FAILURE),表示“附加到系统上的设备不能正常工作”。如果您尝试注册 Win16 .dll 文件,就会发生此现象。例如,键入 regsvr32 dskmaint.dll 会返回该错误信息。

  Dllname 中的 DllRegisterServer(或 DllUnregisterServer)失败。返回代码是:string

  在 Winerror.h 中搜索 string。

  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。

共2页。 9 1 2

网友评论

笔名 
请您注意:遵守国家有关法律、法规,尊重网上道德,承担一切因您的行为而直接或间接引起的法律责任。    IT专家网友拥有管理笔名和留言的一切权利。
  • 周排行榜
  • 月排行榜

邮件订阅

天极服务 | 关于我们 | 网站律师 | 加入我们 | 联系我们 | 广告业务 | 友情链接 | 我要挑错
All Rights Reserved, Copyright 2004-2008, Ctocio.com.cn
渝ICP证B2-20030003号 如有意见请与我们联系 powered by 天极内容管理平台CMS4i