DebugBreak不会中断

我正在用C ++编写一个类,我无法使用F5进行debugging。 代码将从另一个将调用它的“服务”运行。 在过去,我使用__debugbreak() ,当我有一个窗口告诉我,select了一个exception来debugging它。

最近我已经更新到Windows 7,并保持工作一段时间。

今天,当我试图debugging一段代码,而不是显示常规对话框,告诉我VSTestHost已停止工作,并使我能够debugging应用程序,我得到了一个不同的对话框,build议我将数据发送到微软进行分析。

有谁知道我怎么能解决这个问题,所以我将能够debugging我的代码?

最后我找到了问题的原因。 这是一个Vista / Win7的原因:

  1. 打开行动中心控制
  2. 转到行动中心设置
  3. 转到问题报告设置
  4. 选择“每次出现问题时,在检查解决方案之前询问我”

虽然这是更多的IT解决方案/问题,我一直困扰着这个问题整天,并想与其他遇到这个问题的开发人员分享解决方案。

在这种情况下…

http://community.codesmithtools.com/blogs/blake/archive/2009/06/03/tips-amp-tricks-debugging-codesmith-on-microsoft-windows-7.aspx

以下是您需要在Microsoft Windows 7机器上启用调试的快速概览:

更新Just-In-Time调试器设置DbgJITDebugLaunchSetting。 该设置位于注册表[HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft.NETFramework]中。
将DbgJITDebugLaunchSetting的值设置为2.如果您使用的是64位操作系统,则还必须在此文件夹[HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ Microsoft.NETFramework]中将同一个键(DbgJITDebugLaunchSetting)设置为2.如果遇到任何问题尝试以管理员身份运行CodeSmith Studio和Visual Studio。 现在,当CodeSmith进入一个中断点时,你会看到如下所示:

你可以尝试调试>附加到进程。