笔者做Windows开发也很多年了, 由于一直做一些小型工具类开发, 对软件的健壮性,测试技巧显得很不足。
最近在一个大型项目中遇到一些问题:
1. 程序无症状异常退出,不报错
2. 内存访问越界导致乱报错
借助以下2个Windows SDK中带的Debug Tool,终于彻底解决了问题。
1. Application Verifier
解决内存越界很有帮助
当你打开这个工具,添加你的程序进行检测,然后在VS2010中按F5调试,遇到内存问题就会抛出异常,提示你哪一行出错了,很好用。
2. Global Flags
对于调试内存问题也还可以,不过要注意正确使用,这个工具的里的一些注册表项是影响操作系统的。
建议只使用Image File这个Tab页面,其他Tab页面不要随意修改。