如何检测c中是否附加调试器?

前端之家收集整理的这篇文章主要介绍了如何检测c中是否附加调试器?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我创建了一个宏,
#define DEBUG_BREAK(a) if (a) __asm int 3;

但问题是如果没有附加调试器,程序将运行不正确.

所以我需要知道是否附加了调试器.如果有一个调试器,应用程序应该调用int 3.否则,它不应该调用.

我怎么能这样做?

解决方法

你可以使用 CheckRemoteDebuggerPresentIsDebuggerPresent – 不,CheckRemoteDebuggerPresent并不一定意味着调试器在不同的机器上运行,只是在系统中有一个可以处理断点等的调试过程(当使用远程调试器时,有目标系统上的一个小过程,它来自哪里).

编辑:在这一点上,我肯定会建议某种形式的功能,而不是宏.

原文链接:https://www.f2er.com/c/110858.html

猜你在找的C&C++相关文章