使用Tinyxml.lib链接出错问题解决 (LIBCMT.lib(sprintf.obj) : error LNK2005: _sprintf_s 已经在 msvcrtd.lib(MSVCR80D.dll) 中定义)

1、打开tinyxml工程。打开项目属性,将“配置属性-->C/C++-->代码生成-->运行时库”设置为“多线程调试 DLL(/MDd)”(因为新工程的设置是这样子)。重新编译tinyxml工程得到tinyxml.lib,拷贝到VS2005的VC的lib文件下。
2、
打开项目属性,在“配置属性-->链接器-->命令运”的“附加选项”把tinyxml.lib加上去。
3、仍有"LIBCMT"冲突错误存在,在
“配置属性-->链接器-->输入-->忽略特定库”中把libcmt.lib添加进去或者在“配置属性-->链接器-->命令运”的“附加选项”添加上/NODEFAULTLIB:libcmt.lib
4、重新编译,通过。可以顺利使用tinyxml类操作了。

你可能感兴趣的:(多线程,dll)