使用Ping时的蓝屏

Rom*_*her 5 c# debugging bsod callback visual-studio

我遇到了它在BSODon在ping中间结束调试的bug.

我有几种方法可以在我的(wpf)应用程序(我不断ping通)中禁用它,但有时我忘了这样做和BSOD.

我想通过更改全局AllowRealPinging变量并在退出调试器之前在回调中休眠2秒来解决这个问题,所以我没有BSOD.

Han*_*ant 12

这是Windows 7中的已知错误,当​​您终止进程时,您将在tcpip.sys中获得带有错误检查代码0x76,PROCESS_HAS_LOCKED_PAGES的BSOD.最相关的反馈文章就在这里.这个SO问题也包含在内.没有很好的答案,唯一已知的解决方法是回退到早于4.0的.NET版本,它使用另一个不会触发驱动程序错误的winapi函数.

在调试时避免ping是肯定是避免此问题的最佳方法.你想要的方法不会起作用,你的程序在遇到断点时会被完全冻结,当你停止调试时会被kaboom冻结.

最简单的方法是在附加调试器的特定情况下,不首先开始ping.使用System.Diagnostic.Debugger.IsAttached属性在代码中检测到这一点.

  • 刚刚在Windows 10中得到了这个问题,好像bug仍然存在.Connect问题已经消失了. (3认同)