我正在用不能使用F5调试的C++编写一个类。代码将从调用它的另一个“服务”中运行。在过去,我使用过__debugbreak(),当我得到一个窗口,告诉我抛出了一个异常时,我选择去调试它。
最近我更新到了windows7,它一直工作了一段时间。
今天,当我试着调试我的一段代码,而不是显示常规的对话框,告诉我VSTestHost已经停止工作,并允许我调试应用程序时,我得到了一个不同的对话框,建议我将数据发送给微软进行分析。
有谁知道如何修复这个问题,以便能够调试我的代码?
发布于 2009-06-25 14:33:08
最后,我找到了问题的原因。这是Vista/Win7的原因:
虽然这更多的是IT解决方案/问题,但我一整天都被这个问题所困扰,并想与遇到这个问题的其他开发人员分享这个解决方案。
发布于 2018-07-08 22:43:12
我终于在这里找到了Windows10的解决方案:https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/enabling-postmortem-debugging
还有:https://docs.microsoft.com/en-us/windows/desktop/Debug/configuring-automatic-debugging
若要启用自动调试器启动,应添加一个注册表值:
REG_DWORD)类型的
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AeDebug,值Auto = 1已配置的调试器由值Debugger (类型为REG_SZ)设置;Visual Studio安装将其设置为:
"C:\WINDOWS\system32\vsjitdebugger.exe" -p %ld -e %ld请注意,在64位操作系统上,这仅适用于64位可执行文件。要在32位可执行文件中启用相同的行为,请在此键中设置相同的值:
HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows NT\CurrentVersion\AeDebug发布于 2009-06-25 14:13:49
那样的话..。
http://community.codesmithtools.com/blogs/blake/archive/2009/06/03/tips-amp-tricks-debugging-codesmith-on-microsoft-windows-7.aspx
以下是在Microsoft Windows 7计算机上启用调试所需操作的快速概述:
更新实时调试器设置DbgJITDebugLaunchSetting。该设置可在注册表[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework]中找到。
将DbgJITDebugLaunchSetting的值设置为2。如果您使用的是64位操作系统,则还必须将此文件夹[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework]中的相同密钥(DbgJITDebugLaunchSetting)设置为2。如果遇到任何问题,请尝试以管理员身份运行CodeSmith Studio和Visual Studio。现在,当CodeSmith进入一个断点时,您将看到如下所示:
https://stackoverflow.com/questions/1044103
复制相似问题