002、安全开发篇(一):Visual Studio 安装与配置
返回:安全开发篇(一)目录 · 上一篇:001、课程体系与学习路线 · 下一篇:003、项目搭建第一个 C 语言程序
对应视频:1.1 环境-Visual Studio安装与配置.mp4
1、学习目标
这一节的目标是把 C/C++ 实验环境搭好。安全开发后续会大量依赖编译、运行、断点、调用栈、反汇编和内存窗口,所以 IDE 不是摆设,而是观察程序行为的工具。
需要完成的事情:
- 安装 Visual Studio;
- 勾选 C++ 桌面开发相关组件;
- 能创建空项目;
- 能找到编译、运行和调试入口。
2、安装重点
Visual Studio 安装时最关键的是选择 使用 C++ 的桌面开发。如果没有这个工作负载,后面可能会出现找不到编译器、无法新建 C++ 项目、无法编译 .c/.cpp 文件等问题。
| 项目 | 建议 |
|---|---|
| IDE | Visual Studio 2019 或更新版本 |
| 工作负载 | 使用 C++ 的桌面开发 |
| 权限 | 安装器建议以管理员身份运行 |
| 组件 | MSVC 编译工具、Windows SDK、CMake 可按需保留 |
| 安装路径 | 尽量避免中文、空格过多或层级太深 |
初学阶段环境问题很容易消耗耐心。先让默认 C/C++ 控制台项目跑通,再逐步调整配置。
3、为什么用 Visual Studio
这门课后续会涉及调试、内存和反汇编,Visual Studio 的优势在于:
| 功能 | 对学习的帮助 |
|---|---|
| 项目管理 | 方便组织 .c、.cpp、.h 文件 |
| 编译运行 | 一键构建并看到错误信息 |
| 断点调试 | 逐行观察程序执行流程 |
| 变量窗口 | 查看变量当前值和类型 |
| 调用栈 | 理解函数调用和返回过程 |
| 反汇编窗口 | 从 C/C++ 连接到机器指令 |
| 内存窗口 | 观察数组、字符串、结构体和指针的真实布局 |
安全开发不是只看输出结果,而是要能追踪“为什么会这样执行”。
4、环境检查
安装完成后,可以按下面的清单检查:
| 检查项 | 说明 |
|---|---|
| 能打开 Visual Studio | IDE 正常启动 |
| 能创建空项目 | 项目模板可用 |
| 能添加源文件 | 可以新建 .c 或 .cpp |
| 能编译运行 | 输出窗口没有编译器缺失错误 |
| 能设置断点 | 点击行号左侧可以出现红点 |
| 能进入调试 | F5 后能停在断点处 |
如果新建项目时没有 C++ 模板,优先回到 Visual Studio Installer 检查工作负载。
5、常见问题
5.1 找不到 C++ 项目模板
通常是安装时没有勾选“使用 C++ 的桌面开发”。打开 Visual Studio Installer,修改当前安装,补选这个工作负载。
5.2 编译提示 Windows SDK 缺失
可能是 Windows SDK 没装完整。进入安装器补装 SDK,或者切换项目属性里的目标 SDK 版本。
5.3 控制台窗口一闪而过
如果是直接双击生成的 .exe,程序执行完就会退出。初学阶段可以用 Ctrl + F5 不调试运行,或者在命令行中运行程序。
6、安全开发观察
环境搭建要服务于后续观察:
| 观察对象 | 后续用途 |
|---|---|
| 编译错误 | 发现语法、类型和声明问题 |
| 运行结果 | 验证程序表层行为 |
| 断点 | 定位关键执行位置 |
| 调用栈 | 理解函数关系和返回路径 |
| 内存窗口 | 分析数组、字符串、指针和结构体 |
| 反汇编 | 对接逆向分析 |
一套稳定的开发环境,可以减少后面学习时的无效排错。
7、复盘题
7.1 Visual Studio 安装时最重要的工作负载是什么?
最重要的是“使用 C++ 的桌面开发”。它会安装 C/C++ 编译、调试和 Windows 桌面开发所需的核心组件。
7.2 为什么安全开发学习不能只配置普通文本编辑器?
普通文本编辑器能写代码,但调试、查看调用栈、观察内存和反汇编不够方便。安全开发需要理解程序运行过程,Visual Studio 这类 IDE 更适合入门阶段建立观察能力。
7.3 控制台一闪而过怎么处理?
优先使用 Ctrl + F5 运行,或者打开命令行进入程序目录后执行 .exe。不要一开始就依赖 system("pause"),它可以临时用,但不是长期调试方法。
这一节完成后,至少要能打开 Visual Studio、新建空项目、添加源文件、编译运行,并能进入断点调试状态。


