VS2015编译后在其余平台缺失MSVCP140.DLL问题的修复

以前经过VS2015编译的程序在一些电脑上能跑,一些不能跑。试了好多台,能跑的应该是装了vs2015运行库的(不是程序),不能跑的都是缺失dll文件。网上有教程说把配置属性->C/C++->代码生成中的运行库设置为MT,即静态库。然而这样可能连编译都通不过了,报这样的错:windows

必须选择动态库。3d

只能把须要用到的dll都扔到一个文件夹里了。用dependcy.exe能够分析dll的依赖关系,经分析发现最主要的就是缺失MSVCP140.dll,但其依赖的的dll才是最让人头疼的。blog

能够看到他的依赖关系挺多的:教程

其实没看起来这么多,kernel32.dll确定是个windows电脑就有的,就无论他了,他的依赖项也不用管了。ip

dependcy只分析出依赖关系,不能给出我依赖的文件地址...也许是由于其中一些文件隐藏了,开始我照着文件名去网上一个一个当下来,然而拿到另外一台机子上跑失败了...应该是网上的dll不太靠谱或者不匹配吧...get

最终,就是用everything从本身的电脑上一个一个找出来存在VS文件夹和.NET文件夹中的相同名字的dll,嗯,就这样成功了。编译

打包好的MSVCP140.dll及其依赖dll压缩文件地址:http://files.cnblogs.com/files/jwmeng/msvcp140.dll.zip打包

过程有点繁杂...能总比不能强点...配置

相关文章
相关标签/搜索