2011-05-19 102 views
1

我已经通过使用x64构建将32位的COM DLL转换为64位的DLL。我试图注册 这64位的DLL到64位的Windows 2008服务器的UISng C:\ windows \ system32 regsrv32.exe。但我遇到错误消息“Dllregister server failed with error code 0x80029c4a”。 我怎样才能注册这个DLL在64位操作系统。64位的dll寄存器

回答

2

该错误代码为TYPE_E_CANTLOADLIBRARY这可能意味着在DllRegisterServer()内某处发生了呼叫LoadTypeLib(),并且该呼叫因任何原因失败。可能的原因是库未被添加到DLL资源中。

+0

我在atlbase.h中有LoadtypeLib部分,但它被禁用的形式为#ifndef _ATL_DLL – user443088 2011-05-19 07:16:42

+1

@ user443088:这是非常不可能的事情会返回该错误代码。您应该尝试在调试器下运行regsvr32并检查确切返回错误代码的时间。 – sharptooth 2011-05-19 07:19:36