C++确定调试器是否已连接
我使用 stackwalk64 在 Visual Studio 2008 中使用最新的 symchk.exe 和 dbghlp.dll 生成 C++ 的堆栈跟踪。当我运行独立的 exe 时,这工作得很好。但是,当附加调试器时,我使 Visual Studio 陷入僵局。我以前有一个解决方法,将所有 system32 符号下载到磁盘,效果很好,但最近的更新似乎破坏了我的解决方法,即使我更新了符号。理想情况下,我想确定是否附加了 Visual Studio 调试器(它永远只是 VS 调试器),以便在这种情况下我可以关闭堆栈跟踪。感谢您的任何帮助。
I use stackwalk64 to generate stacktraces for C++ in visual studio 2008 using the latest symchk.exe and dbghlp.dll. This works fine when I'm running the standalone exe. However, when the debugger is attached I deadlock visual studio. I previously had a workaround where I downloaded all of the system32 symbols to disk and this worked well, but a recent update seems to have broken my workaround even though I updated the symbols. Ideally I would like to determine if the visual studio debugger is attached (it will only ever be the VS debugger) so I can turn off my stack traces in that case. Thanks for any help.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
使用
IsDebuggerPresent
和可能CheckRemoteDebuggerPresent
Use
IsDebuggerPresent
and possiblyCheckRemoteDebuggerPresent