gpt4 book ai didi

windbg - 如何在windbg中设置不会停止执行程序的断点,只需记录称为

转载 作者:行者123 更新时间:2023-12-04 04:11:06 37 4
gpt4 key购买 nike

我正在调试Windows组件,并希望查看被调用的特定dll的所有功能(也按照它们被调用的确切顺序)。我可以通过将组件附加到 windbg 并在有问题的dll的所有导出函数(bm *module_name!*)上设置断点来做到这一点。

这按预期工作。每当该dll的导出函数被称为windbg时,执行都会中断,并在屏幕上显示有关所命中的断点的信息。之后,我可以通过按F5或发出go命令来手动恢复执行。

问题:
dll的某些功能必须很快(立即)返回,否则该组件将崩溃。在这种情况下,断点将导致组件崩溃。我可以删除有问题的断点,但是不会有被击中的日志。

我环顾四周,发现只要遇到断点,我都可以运行命令。 bm module_name!func_name ".printf \"func_name\n\";gc"但这对于每个导出的函数都不可行。该dll大约有几百个导出函数。

我该怎么做(在屏幕本身上)记录每个被击中的导出函数(即使没有其他方法也可以执行断点编号)。我可以在printf命令中使用一个可以显示函数名称的变量名称(如果不是函数名称,则可以打印断点编号)?

最佳答案

弄清楚了。感谢EdChum。

命令:bm *module_name!* ".frame;gc"

关于windbg - 如何在windbg中设置不会停止执行程序的断点,只需记录称为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26234442/

37 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com