为了实现vs2013编译的运行程序在xp下可以运行,我进行了以下操作
1. 项目菜单->项目属性->配置属性->常规->平台工具集,选择“VS2013WindowsXP(v120_xp)”;
2. 项目菜单->项目属性->配置属性->常规->MFC的使用,选择在静态库中使用MFC;
3. 项目菜单->项目属性->链接器->系统->子系统->控制台或窗口windows(根据你的项目类型选择),第二项版本号设成5.01。
4. C/C++->代码生成->运行库,选择“多线程调试(/MTd)”;
5. 还需要至少带有Update3(或4),这一点我没有验证,因为我直接安装的就是带有Update3的VS2013。
但是编译后会输出错误:odbccp32.lib(dllload.obj) : error LNK2019: 无法解析的外部符号 __imp___vsnprintf
网络上搜索了很多说明,最后直接的解决办法就是:搜索本机odbccp32.lib文件,如果本机中存在xp或win32标注的库,把库的绝对路径放到项目->属性->VC++目录->库目录中添加xp版本的odbccp32.lib的所在目录,要放到其他引用目录之前