我正在创建COM对象dll。当我把它带到WIN XP 32位macheen并试图注册时,我收到消息:
LoadLibrary ... failed. The specified module could not be found
。
当我用依赖性walker查看它时,我发现缺少3个dll:
ATL100.dll
MSVCR100D.DLL
DWMAPI.DLL
解决这个问题的方法有哪些?而且我不喜欢这样的事实:当我将这个COM dll安装到我的客户手中时,我还需要将丢失的dll组合在一起。
答案 0 :(得分:1)
您需要在客户端计算机上安装MS VC++ 2010 redistributable pack。
您还应该将程序与redist包的发行版本链接,而不是分发调试版本的VC ++运行时(msvcr100d.dll),因为它的版本对应部分是VS2010可再发行组件的一部分,如上所述{{3} }。 ATL100.dll也是该软件包的一部分。 MS对here有严格的政策。 which dll can be distributed with the application将有助于解决该问题。