帮助中心

首页 >> 帮助中心 >> 服务器 >

windows 2008 win7 64位无法注册CX/DLL组件的解决办法

时间:2014-12-17   访问量:1685

 Windows 2008注册OCX失败。开启cmd.exe执行regsvr32 boo.ocx时传回错误讯息:


无法加载模块 c:windowssystem32oo.ocx"。 请确定二进制文件储存于指定的路径,或进行侦测以检查二进制文件或相依 .DLL 档是否发生问题。找不到指定的模块。

在x64平台注册32位组件(OCX, DLL)应使用c:windowssysWOW64 egsvr32.exe,而非c:windowssystem32 egsvr32.exe! (发现有趣的是: system"32"下的regsvr32.exe是64位版,sysWOW"64"下的regsvr32.exe才是32位版。XD)

将boo.ocx复制到c:windowssysWOW64,并使用同目录下的regsvr32.exe执行注册。

但是注册后会出现第二个问题:0x80040200

"boo.ocx" was loaded but the call to DllRegisterServer failed with error code 0x80040200
模块boo.ocx已加载, 但是呼叫 DllRegisterServer 失败, 错误码为 0x80040200

原因: 同事因不熟悉UAC的眉角,在启动cmd.exe时未Run As Administrator提升为管理者权限,导致0x80040200权限不足错误(印象中,权限不足代码多为0x80004005,本例不然)。重新升为管理者权限执行cmd.exe,注册成功!