C++,PDB和dump文件进行调试的方法

关于PDBdump文件进行调试的方法,现在总结一下:

1PDBdump的概念前面已经说过了,参照前面的文档。

2,另外记录一下另一个问题:在用vss调试时,出现了错误,比如除数是0,或者空指针等问题,vs有时候会中断,有时候不会中断。按照下图设置就会在出现错误时,程序中断:工具 --->选项:

3PDB文件的获得参照上面介绍。

4dump文件如何获得?两种方法,下面分别介绍。

      (1) 假如客户机安装了vs开发环境。

首先,在客户机的注册表中,在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AeDebug

这个目录下,添加下图的项。如下图:

其次,在客户机的注册表中,在HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows NT\CurrentVersion\AeDebug 这个目录下,添加下图的项。如下图:

       最后,在客户机运行程序。

              第一,如果出现错误,将会出现如下图的界面:

              第二,选择红色框,点击 “是” 按钮,将会打开vs,然后按下图操作,将会保存一个dump文件。

                  第三,将 生成的dump文件,发给程序的开发者。

第四,程序的开发者一定是有源码的,将dump文件和exepdb文件发在同一个目录下,

                第五,双击 dump文件,将会打开vs,如下图:

           第六,点击 “使用 仅限本机 进行调试”,将会定位到出现错误的地方。如下图:这个仅仅是个例子,输入的时候输入b0,当b0的时候就会报错,所以定位到了改行。

 

 

(2) 客户机没有安装vs开发环境。

如果没有安装vs开发环境,就需要用到ntsd.exedbgend.dlldbghelp.dll三个文件。这三个文件分64位和32位,不同的系统用不同的文件。如下图:

 

首先,在客户机的注册表中,在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AeDebug

这个目录下,添加下图的项。如下图:(注意和上面的区别,Debugger的数据不一样)

其次,在客户机的注册表中,在HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows NT\CurrentVersion\AeDebug 这个目录下,添加下图的项。如下图:(注意和上面的区别,Debugger的数据不一样)

 最后,在客户机运行程序。

             第一,如果出现错误,将会出现如下图的界面:

             第二,在D盘目录下,将会自动保存一个dump文件。(为什么是在D盘下面,因为注册表中的配置就是在D盘根目录下保存)。如下图:

第三,将 生成的dump文件,发给程序的开发者。

第四,程序的开发者一定是有源码的,将dump文件和exepdb文件发在同一个目录下,

                第五,双击 dump文件,将会打开vs,如下图:

第六,点击 “使用 仅限本机 进行调试”,将会定位到出现错误的地方。如下图:这个仅仅是个例子,输入的时候输入b0,当b0的时候就会报错,所以定位到了改行。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值