没有找到 MSVCR120D.dll,因此这个应用程序未能启动。重新安装应用程序可能会修复此问题。

来源:互联网 发布:java svn api 编辑:程序博客网 时间:2024/06/06 14:00

初学C++/CLI,写了一个Delphi 调用.Net代码的接口,在开发环境用得好好的,但到了生产环境就报错,如图 1。


图1

开发环境是Win7,在VS2013用C++/CLI写的;生产环境是WinXP,已打了SP3。

网上查了下,这个DLL文件属于VC的一个DLL。但我已经在生产环境安装过Visual C++ Redistributable Packages for Visual Studio 2013和.NetFramework 4.0了,应该不存在缺失才对。于是我在生产环境搜了搜C:\Windows\system32\,发现果然没有msvcr120d.dll这个文件,只好从开发环境复制了一份,如图 2。


图 2

再跑一遍程序,再次报错,如图 3。


 

图3

看提示好像要重装Visual C++ Redistributable Packages for Visual Studio 2013,于是卸了又装一遍,依然无果。

然后看到stackoverflow的高人说把解决方案配置改成Release就行了,如图 4。试了一下,搞定!


图 4

原来VC2013在Debug配置下编译的东西需要msvcr120d.dll来运行,Release配置下编译的东西需要msvcr120.dll来运行(也就是Redistributable Packages安装中带的)。看来以后要多多注意。

 

 

 

0 0
原创粉丝点击