我想在windbg中设置一个条件断点。
例如,让我们假设LoadLibrary API。
如何设置断点,使其在每次加载user32.dll时都有效。
> x kernel32!LoadLibraryW它将提供一些地址XXXX
现在我可以将断点设置为
> bu [XXXX] 但这将影响到所有对LoadLibraryW的调用。
有什么建议吗。
发布于 2009-09-02 09:38:15
您不能在user32.dll上设置条件断点,因为它被映射到地址空间的时间相对较早,而初始调试器的断点在此之后触发(据我所知)。
只要你能跟踪user32.dll被加载的时刻,你就可以像这样覆盖一个模块中断:
sxe ld user32.dll
你可以做的是让你的应用由一个启动程序启动,然后让windows调试器在user32.dll加载时中断。只需使用-o命令行选项或.childdbg 1扩展调用启动子进程的调试,并使用cmd.exe启动它,例如:
windbg -c "sxe ld user32.dll;g" -o cmd.exe /C yourapp.exe发布于 2009-09-02 06:40:57
我被你问题中的文字和标题搞糊涂了。但是假设您想要设置一个条件断点,那么您应该看一看documentation,因为它在这个主题上有很多细节。
https://stackoverflow.com/questions/1366051
复制相似问题