【问题标题】:Does mdbg support conditional breakpoints?mdbg 是否支持条件断点?
【发布时间】:2023-03-21 06:06:01
【问题描述】:

我正在调试使用mdgb 用C# 编写的“Hello World”程序,但似乎gdb 样式的条件断点未能在mdbg 中设置,例如

  [p#:0, t#:0] mdbg> when 1 sum>100
  Error: Invalid command syntax

这是当相关的语法,但我仍然不知道如何在 mdbg 中设置条件断点,虽然我读过 mdbg documenation [MSDN]

那么,mdbg 中的cond 1 sum>100 是什么?

如何有条件地设置断点?

编辑 1 @ThomasWeller 你的 when 子句在语法上是正确的,但它似乎不是一个条件断点,因为 g 再次命中断点,并且 when 子句不起作用,如果它起作用,g 应该在 sum 大于 100 时中断,但是事实上g 在总和为 1 时中断,远小于 100 :(

编辑 2 when BreakpointHit 1 do echo sum>100 无效

【问题讨论】:

  • 我认为 when 命令的使用类似于when AssemblyLoaded do echo sum>100
  • @ThomasWeller 阅读编辑 1,您的方法无效。
  • 好吧,when BreakpointHit 1 do echo sum>100
  • @ThomasWeller 不起作用,请参阅编辑 2

标签: c# .net windbg mdbg


【解决方案1】:

不支持条件断点。如果您真的很想在 MDbg 中获得条件断点,您可以下载源代码并添加该功能: http://www.microsoft.com/en-us/download/details.aspx?id=2282

或者,您可以获取支持条件断点的免费版本的 Visual Studio。

【讨论】:

  • 你怎么知道mdbg不支持条件断点?
  • 我在 Microsoft 的 .Net Framework 团队工作。在其他职责中,我认为自己是 MDbg 源代码的所有者; )
  • 大声笑,mdbg 是非常好的工具,启用条件断点更好:)
  • 你用cdb作为c++调试吗,我这里有一个问题stackoverflow.com/questions/30011043/…
猜你喜欢
  • 2012-03-22
  • 1970-01-01
  • 2014-07-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-06-09
  • 1970-01-01
相关资源
最近更新 更多