如何在windbg中的函数末尾添加断点,这样即使在源中添加/删除了某些行,我也不需要编辑它?

TCS*_*rad 6 debugging windbg breakpoints conditional-breakpoint

我需要在某些函数被命中时记录一些数据,无论是在执行开始还是结束时.虽然我没有问题在函数的开头放置断点(使用bu [module]!functionname,我不知道如何在函数的末尾放置一个断点,所以我不需要编辑断点每次我添加/删除文件中的某些行/ function.我确定这是一个非常常见的场景,只是因为我不知道它是如何完成的!!有人可以解释一下吗?

小智 7

您可以使用函数开头的断点在返回地址处设置断点.像这样:

bu [module]!functionname "bp /1 @$ra \".echo Exit functionname ; g\"; .echo Enter functionname; g"
Run Code Online (Sandbox Code Playgroud)

警告:如果在函数中抛出异常,这可能不起作用.