去除对MSVCR120.DLL的依赖

生成一个exe或者dll的时候可能会依赖MSVCR120.DLL(或者之前的版本MSVCR80.DLL、MSVCR90.DLL、MSVCR100.DLL)

如果你选择

1.MT

2.使用windows标准库


有可能会解决这个问题。但是有时候vs编译的时候还是会依赖这个库,我用的是vs2013,之前用这种配置不会依赖,后来不知道改了什么东西,

无论如何生成的dll都要依赖这个库,这样的程序如果要在xp下或者没有MSVCR120.DLL的windows下是运行不起来的。


产生原因:不知道何种原因vs链接的时候还是使用了msvcrt.lib这个库,事实上应该自动使用libcmt.lib这个库的,可能是vs的bug

解决方法:在链接器-》输入-》忽略指定的库,编辑,加上msvcrt.lib

注意,适用于MT+windows标准库的配置方法,如果用了mfc,可以选择使用静态的mfc库这种方法。

你可能感兴趣的:(编程开发)