将非托管C ++代码从32位转换为64位

时间:2010-03-24 10:05:20

标签: c++ unmanaged 32bit-64bit

我有一个非托管C ++ 32位应用程序,它产生一个dll。现在,我想为64位系统构建它。我的开发系统是32位。它使用oledb.lib activeds.lib adsiid.lib ws2_32.lib库来构建dll。到目前为止我所做的是:更改配置设置并将Active solution platform设置为x64。它成功构建了应用程序。但我无法在64位机器上注册该DLL。当我试图这样做时,我收到以下错误:

无法加载DLL C:\ Windows \ System32 \ KBTicketExperience.dll

进程名称:dllhost.exe

Comsvc​​s.dll文件版本:组件注册期间ENU 2001.12.8530.16385 shp。无法验证DLL入口点。

请您告诉我如何摆脱这个问题?提前谢谢。

1 个答案:

答案 0 :(得分:0)

我建议创建一个新的项目/工作区来构建这个64位直通的DLL - 没有任何32位的东西。假设这个项目工作的DLL,你可以更仔细地看看项目之间的差异,并从那里得到。