# Dev-C++ 运行说明 本说明适用于需要在 `Dev-C++` 环境下编译本项目的情况。 结论先说: - 可以运行 - 但不如 VS Code + 脚本方式稳定 - 如果只是为了交作业或课堂展示,优先推荐使用项目自带的 MinGW 脚本 ## 1. 适用环境 - Windows - Dev-C++ - MinGW-w64 建议 Dev-C++ 所使用的编译器支持: - `C++17` - `windres` - `-municode` ## 2. 建议工程类型 新建工程时请选择: ```text Windows Application ``` 不要选择控制台程序。 ## 3. 需要加入工程的文件 ### 源文件 把以下文件加入工程: - `src/source/stdafx.cpp` - `src/source/Tetris.cpp` - `src/source/TetrisLogic.cpp` - `src/source/TetrisRender.cpp` - `src/source/TetrisRogue.cpp` ### 头文件 头文件不一定要加入编译列表,但建议加入工程树,便于浏览: - `src/include/stdafx.h` - `src/include/Tetris.h` - `src/include/TetrisLogicInternal.h` - `src/include/targetver.h` - `src/include/resource.h` ### 资源文件 如果当前 Dev-C++ 环境支持资源编译,可以再加入: - `src/resources/Tetris.rc` ## 4. 需要配置的选项 ### 头文件搜索路径 加入: ```text src/include ``` ### 链接库 确保链接以下库: - `winmm` - `gdi32` - `user32` - `comdlg32` - `ole32` - `gdiplus` ### 编译标准 建议设置为: ```text C++17 ``` ### 预处理宏 建议定义: - `UNICODE` - `_UNICODE` - `_WINDOWS` ### 建议参数 如果需要手动补充: - `-mwindows` - `-municode` ## 5. 资源文件注意事项 Dev-C++ 下最容易出问题的是资源编译。 本项目资源包括: - 图标 - 菜单 - 关于框 资源脚本为: ```text src/resources/Tetris.rc ``` 如果 Dev-C++ 对该资源文件编译不稳定,最稳妥的做法有两种。 ### 做法一:不编译资源文件 先只编译 C++ 源文件。 这样: - 程序主体通常能正常运行 - 但窗口图标、菜单等资源可能缺失 ### 做法二:优先使用脚本构建 先在项目根目录执行: ```powershell powershell -NoProfile -ExecutionPolicy Bypass -File .\build-mingw.ps1 ``` 确认脚本方式可构建后,再视需要把 Dev-C++ 作为备用方案。 ## 6. 资源目录不要遗漏 无论你用哪种方式运行,下面这些目录都不要删: - `assets/icons/` - `assets/images/` - `assets/audio/` - `assets/video/` 否则会影响: - 图标显示 - 背景图片 - 背景音乐 - 视频复活 ## 7. 常见问题 ### 1)能编译但没有图标或菜单 通常是资源文件没有正确编译进程序。 ### 2)编译时报 `gdiplus` 或 `winmm` 未定义引用 说明缺少链接库,请检查工程链接设置。 ### 3)运行时没有背景图 / 音乐 / 视频 说明程序找不到 `assets/` 目录,通常是工作目录不对,或者运行时只复制了 `exe` 没带资源。 ## 8. 建议 如果你的目标是: - 交作业 - 本地演示 - 快速稳定运行 请优先使用本项目已经配好的 `build-mingw.ps1` 和 VS Code 配置。 Dev-C++ 更适合作为兼容环境,而不是主开发环境。