使用 Ping 时蓝屏

2024-03-08

我遇到了一个错误,它在 ping 过程中蓝屏结束调试。

我有几种方法可以在我的 (wpf) 应用程序中禁用它(我连续 ping),但有时我忘记这样做并出现 BSOD。

我想通过更改全局AllowRealPinging变量并在退出调试器之前在回调中休眠2秒来解决这个问题,这样我就不会出现BSOD。


这是 Windows 7 中的一个已知错误,当​​您终止进程时,您将在 tcpip.sys 中收到带有错误检查代码 0x76、PROCESS_HAS_LOCKED_PAGES 的 BSOD。最相关的反馈文章is here http://connect.microsoft.com/VisualStudio/feedback/details/691615/stopping-debugging-session-while-waiting-for-pingreply-causes-bsod。还涵盖了这个问题 https://stackoverflow.com/questions/7975801/c-sharp-program-causes-bluescreen。那里没有很好的答案,唯一已知的解决方法是回退到 4.0 之前的 .NET 版本,它使用另一个不会触发驱动程序错误的 winapi 函数。

调试时避免 ping 无疑是避免此问题的最佳方法。你想要的方法是行不通的,当你的程序遇到断点时,它会完全冻结,当你停止调试时,就会崩溃。

最简单的方法是在连接了调试器的特定情况下首先不启动 ping。使用 System.Diagnostic.Debugger.IsAttached 属性可以在代码中检测到这一点。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Ping 时蓝屏 的相关文章

随机推荐