我正在开发一个.NET C ++应用程序。我正在使用指纹传感器,其主库仅适用于32位,并且具有许多依赖关系,其中之一是msvcr110.dll。我知道这个DLL附带了VS C ++ Redistributable Package 2012,所以我安装了它。
然而,当我运行应用程序时,我得到了BadImageFormat异常。我用Dependency Walker打开了DLL,我看到它在Windows / System32的文件夹中找到msvcr110.dll / msvcr110d.dll,但在Dependency Walker中,DLL以64位格式出现。这对我来说毫无意义,因为它是从System32文件夹加载的。
如果我使用Dependency Walker打开msvcr110.dll,它将显示为32位。为什么当指纹传感器加载库时,它将其加载为64位?
有什么想法来解决这个问题?非常感谢
答案 0 :(得分:-1)
感谢您的回复:)最后,我采取快速方式并安装Visual Studio 2012以获取msvcr110d.dll。然后,我将两个dll复制到我的程序路径,它工作了......但是,你的选项看起来更好,因为它不需要使用调试dll。