1.开发期
此阶段的程序大多根据源代码,断点调试。
2.运行期(Release版本)
(1)vs工程属性设置
a.用于生成pdb调试信息
属性-》c/c++-》常规-》调试信息格式-》程序数据库(/Zi)
属性-》c/c++-》优化-》已禁用(/Od)
属性-》链接器-》调试-》优化以便于调试(/DEBUG)
b.用于try catch捕获seh异常
属性-》代码生成-》启用c++异常-》是,但有SEH异常(/EHa)。
(2)代码增加断言或者try catch,并保存需要的现场数据。
(3)代码增加log输出信息,比如使用Win系统下的OutputDebugString(str),使得Debugview这样的软件能捕获到。
(4)代码增加崩溃转存文件。
(5)代码增加日志信息文件。

在开发期,程序主要依赖源代码和断点进行调试。进入运行期,Release版本需配置生成pdb调试信息,禁用优化以方便调试,并启用C++异常处理。此外,通过trycatch捕获SEH异常,添加断言和log输出来辅助诊断问题,同时实现崩溃时的转存文件和日志记录,以备后查。

4014

被折叠的 条评论
为什么被折叠?



