2008-10-28 114 views

回答

16

要在混合模式进程的本机部分设置数据断点,请参阅answer posted by jyoung

当运行除纯粹的本地代码之外的其他任何东西时,Visual Studio禁用数据断点。请参阅this文章,了解VS Program Manager的部分解释。

+3

“部分解释”=团队从未为此编写代码。 – 2016-03-16 20:15:27

30

因此,要做到这一点,我不得不:

  • 设置非托管的DLL为启动项目
  • 设置管理程序的启动命令
  • 组调试模式本地
  • “中断执行”或命中断点,以便处于“调试”状态

yech

+3

快速提示:正如你在你的问题中提到的,你的程序必须处于“休息”状态才能使菜单选项可用。 – dss539 2011-08-22 20:37:17

4

建议的解决方案无法一直工作。即使在本机模式下进行调试时,程序在Native代码段中被破坏,当试图设置“新数据断点”时,我会弹出一个弹出窗口“无法设置断点。公共语言运行时不支持数据断点“

另一种方法是直接从代码中添加数据断点。请参阅文章here

这在混合模式运行良好,只需要本机调试模式被激活(如上面所建议的)

1

其中工程到处一个非常有用的技巧是调用从代码断点在特殊条件下:

If (Condition) 
    System.Diagnostics.Debugger.Break()