您的位置:首页 > 其它

windows系统如何设置应用程序崩溃自动内存转储

2011-03-27 15:56 871 查看
     产品经过兄弟们的几个月的努力,终于发布了。兄弟们正准备庆祝:终于可以休息一下,可以过正常上下班的生活了。可就在这时,前方技术支持来急电,用户使用过程中,程序core dump,要求开发人员紧急定位。经与用户交流,得知:在xxx操作下,问题可重现。于是,开发人员便打开几时万行的代码,检视与操作场景相关的部分,试图找到问题根源。1个小时,2个小时。。。时间一点点过去,却毫无进展。。。

      以上场景,我想是不少开发新手或缺乏经验的团队,都经历过的场景,摆在我们面前的一道难度是:如何快速定位问题?

      解决以上问题的一种方法是:在现场设置程序崩溃自动转储。

      在windows 注册表如下项:

     //HKEY_LOCAL_MACHINE/Software/Microsoft/Windows NT/CurrentVersion/AeDebug

     中提供了调试器的相关设置。

      Debugger  设置具体的调试器和启动参数

      Auto  是否设置在发送错误前启动调试器

 

      以windbg为例

      Debugger = "Path/WinDbg.exe" -p %ld –c ".dump /ma /u C:/CrashDump.dmp" -e %ld –g

      在程序崩溃的时候,将启动windbg,并将内存转储到c:/crashdump.dmp文件中。

      开发人员拿到dmp文件后,就可以定位问题了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  windows 生活 产品 c