DLL加载失败:在Windows7 32位计算机上找不到指定的模块?

时间:2013-01-10 10:06:25

标签: visual-c++ dll windows-7 visual-studio-2012

我在windows7专业32位机器上创建dll,同样dll注册另一个32位windows7专业服务包1机器这个dll没有注册显示如下错误。

无法加载DLL'coredll.dll':找不到指定的模块。

enter image description here

如何解决相容性问题? 问候 纳拉辛哈

1 个答案:

答案 0 :(得分:1)

加载DLL需要解析DLL的所有依赖项。您应该使用Dependency Walker获取所需的DLL列表。将Dependency Walker复制到目标计算机时,它应立即显示缺少的DLL。

从VC ++创建DLL时,通常需要VCxxRT(Visual C ++运行时)DLls。这些DLL有不同的版本。当您的目标机器未安装正确的版本时,您会收到此错误。

通过查看x86_microsoft.vcXX.crt_*的C:\ Windows \ winsxs来检查已安装的版本。

编辑:Hans'评论是正确的。 coredll.dll是Windows CE DLL。使用需要coredll.dll的DLL运行regsvr32是没有意义的。您可以通过以下方式查看:

dumpbin /headers IPTCExt.dll | find "subsystem"