一、条件断点
1.下断方式:shit+f2,即可在某条指令上设置条件断点,之后会弹出一个框,让我们设置条件
当到这条指令并且满足条件的时候,就会在此断住
2.条件语句很灵活,不只是可以设置一个条件,可以设置多个条件,比如用 ||或者&&连接
推荐写条件的时候用双等号,和C里面if似的(==)
二、条件记录断点
1.下断方式:shift+f4,可以选定一条指令,右键,条件记录断点,其实我认为,这个断点主要是为了记录一些东西而设定的,也可以选择不让程序中断,单纯的记录。一般用于API函数的记录,下断一般都在第一行下断
2.点击L面板(日志面板),可以将日志文件导出,右键–记录到文件,如果有太多没用的,可以先右键–清空一下,然后运行,如果用到了这个函数,就会有记录,也可以设置断点,如果用到了(或者用到了并且符合条件了),就会断住,并且有记录。
如下图,我在MessageBoxA函数的起始指令设置条件断点
因为我选择的是按条件记录,所以第一次调用messageboxA函数时没有记录(不满足我填入的条件),第二次满足,并且将esp的具体内容记录,返回地址、调用地址、调用函数的参数(句柄、文字内容、标题、款式等等)
条件记录断点的各项内容:
“ 条件 ”一栏填写你想下段的条件,和上讲的条件断点作用相同,详情参考上讲。
“表达式”一栏写想要记录的内容,比如我这里写ESP,表示任何时候都会记录 ESP 的值。记录功能不受条件的影响!是不不相互干扰的。
“ 暂停程度 ”,就是断点功能,如果勾选“从不”,就只记录,不断下,如果写“永远”,就每次符合条件时就断下,和 “条件”共同构成条件断点。
“记录表达数值”就是记录功能是否启用,勾选永远表示启用记录功能,勾选从不,就不记录表达式里的值。
“记录函数参数”就是是否记录压入堆栈的函数的各个参数。
来源:CSDN
作者:清舟侧丶
链接:https://blog.csdn.net/weixin_43046297/article/details/104626590