VisualStudio使用过程中遇到的问题。
设置相关
- 版本问题: 
 v100(vs2010)-v110(vs2012)-v120(vs2013):在属性中改成对应vs版本的
- stdafx.h问题: 
 项目属性 -> C/C++ -> 预编译头
- 目标计算机类型x86(x64)冲突: 
 项目属性 -> 链接器 -> 高级 -> 目标计算机: 改成对 应的
 项目属性 -> 链接器 -> 所有选项 -> 附加选项: 改成对应的
- 构建目标不是v120之类的问题 
 右键项目->升级编译库….
- 运行库冲突 
 项目属性 -> C/C++ -> 代码生成 -> 运行库 -> 选“多线程调试 (/MTd)”(4个都试下)
 看在项目属性的 C/C++ ->命令行 和 链接器 -> 命令行 是否有 /machine:X86
- 卸载vs 
 1,解压你的VS安装文件(ISO文件)。
 2,从命令行进入解压后的目录。
 3,执行vs_ultimate.exe /uninstall /force,则会完全卸载掉Visual Studio。注意命令中包含的空格。
 4,最后我选择用系统维护工具清理一下无用的注册表之类的系统垃圾就可以了。
查看VS 2013命令行选项的方法。
1,从命令行进入VS安装程序解压之后的目录(这个目录包含vs_ultimate.exe)。
2,执行vs_ultimate.exe /?命令就会弹出窗口,显示VS的命令行选项。
- “SAFESEH映像不安全”问题 
 1,属性 -> 链接器 -> 命令行
 2,在“附加选项”中添加 /SAFESEH:NO
- 提示一个头文件找不到,但自己所写的代码并未包含 
 属性 -> C/C -> 高级 -> 强制包含文件
- 更改vs动态库、导入库及pdb文件的位置及名称 
 说明:如果是静态库,则只需要一个lib文件;如果是动态库,则有一个dll和一个lib文件,lib为导入库文件
 (一)、静态库
1.导入库lib名称:属性 -> 库管理器 -> 常规 -> 输出文件
2.调式用PDB文件:属性 -> C/C++ -> 输出文件 -> 程序数据库文件名
 (二)、动态库
1.动态库dll名称:属性 -> 链接器 -> 常规 -> 输出文件
2.导入库lib名称:属性 -> 链接器 -> 高级 -> 导入库
3.调式用PDB文件:属性 -> 链接器 -> 调试 -> 程序数据库文件名
(附:动态库貌似没有PDB文件,在Debug模式下也不会提示 找不到PDB文件)
- 添加vs的头文件、链接库目录 
 1.头文件目录:属性 -> VC++目录 -> 包含目录
 2.库目录:属性 -> VC++目录 -> 库目录
 3.库文件:属性 -> 链接器 -> 输入 -> 附加依赖项
 或者:用#pragma comment(lib,”xxx.lib”),用预处理命令时,库目录无需要再添加
 注意:库工程若要添加库文件在 属性 -> 库管理器 -> 常规 中
- 静态编译 
 项目属性 -> C/C++ -> 代码生成 -> 运行库
 Debug项目:MTd
 Release项目:MT
 (带DLL的为动态编译)
- 一些窗口关闭后找不到了 
 在 “视图” 和 “视图 -> 其它窗口” 中找
- 带命令调试程序 
 在int main(int argc, char* argv[])调试中要带参数时,在“项目属性 -> 调试 -> 命令参数”添加
- _CRT_SECURE_NO_WARNINGS问题 
 在main.cpp文件第一行添加: #define _CRT_SECURE_NO_WARNINGS ,
 或者: “属性 -> C/C++ -> 命令行”添加 /D _CRT_SECURE_NO_WARNINGS
- 无法从“const char”转换为“const TCHAR *” 
 将字符串改成:_T(“xxxxx”)形式,
 或者: “属性 -> 常规 -> 字符集 -> 使用多字节字符集”。
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 [ yehuohan@gmail.com ]