繁体   English   中英

C ++:无法使用regsvr32注册我的DLL,但通过IDE可以工作

[英]C++: Unable to register my DLL using regsvr32, but via IDE works

我在VS2012中创建了COM ATL DLL。

当我让IDE对其进行编译时,它将被自动注册,并且可以在开发人员机器上使用它。

我尝试在干净的XP计算机上注册DLL,并返回regsvr32.exe

“” LoadLibrary(“ MyDll.dll”)失败。找不到模块。“

我以为我创建了一个普通的COM DLL,而不是托管DLL,所以我想可以使用regsv32.exe而不是REGASM进行注册。

我已经用“多线程(/ MT)”选项编译了DLL,所以我想我不需要安装C ++运行时,对吗?

使用ProcMon,我看到regsvr32.exe查找“ atl110.DLL”。 尽管我选择了“多线程(/ MT)”,但仍需要分发它吗?

有人知道我做错了什么吗?

感谢您的帮助。

编辑:对不起,我首先输错了错误信息。

我已经从更改了项目属性

配置->通用-> ATL的用法:从“动态链接到ATL”到“静态链接到ATL”。

这完成了工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM