这篇是调试的最后一篇,也是VS2017的最后一篇。
这一篇主要介绍远程调试。以上两篇介绍的情况都是自己开发自己调试, 而作为软件开发者不可能将系统完全开发到没有bug的程度才去发布。大多数都是一边发布,一边更新。
所以,在我们发布软件到客户手上后,要能够收集用户的崩溃信息,以及能够帮助开发者解决bug的重要数据。
很多软件,包括Windows系统,出现崩溃以后会有个错误汇报窗口,引导你上传错误信息给开发者以便于开发者解决这个bug。这一篇说的就是这种远程调试的方案。
以Windows为例子,假如Windows出现蓝屏或者死机,Windows会保留哪些信息以便于开发者找出崩溃bug?这个是用户可选择的,如下:
上图中的写入调试信息,就是前面提到可以帮助开发者找出bug的文件。这个文件叫dump文件,后缀默认为.DMP。从dump的词义来看,这个文件也是一个副本,至于是什么的副本呢,先看看选择项有哪些:
这五个选项都是把崩溃时的内存的值写入到硬盘中,只是写入内存的大小不一样而已,所以dmp又叫内存转存储。除了第一个256kb以外,其他的选项都是几百兆或者就是你的内存大小。所以一般都选择使用小内存转储。