C++ 判断是不是附加了调试器
Posted
技术标签:
【中文标题】C++ 判断是不是附加了调试器【英文标题】:C++ figure out if the debugger is attachedC++ 判断是否附加了调试器 【发布时间】:2011-01-27 15:58:26 【问题描述】:我使用 stackwalk64 在 Visual Studio 2008 中使用最新的 symchk.exe 和 dbghlp.dll 为 C++ 生成堆栈跟踪。当我运行独立的 exe 时,这很好用。但是,当附加调试器时,我死锁了 Visual Studio。我以前有一个解决方法,我将所有 system32 符号下载到磁盘并且效果很好,但是最近的更新似乎破坏了我的解决方法,即使我更新了符号。理想情况下,我想确定是否附加了 Visual Studio 调试器(它只会是 VS 调试器),所以在这种情况下我可以关闭我的堆栈跟踪。感谢您的帮助。
【问题讨论】:
【参考方案1】:使用IsDebuggerPresent
,也可能使用CheckRemoteDebuggerPresent
【讨论】:
以上是关于C++ 判断是不是附加了调试器的主要内容,如果未能解决你的问题,请参考以下文章
如何在运行时确定您的 C++ 应用程序何时附加了 Visual Studio 调试器?