c# - 我的 .net 程序导致 BSOD

标签 c# .net winforms

我的 Windows winform 应用程序运行时出现蓝屏。 似乎只有一个用户得到了这个。我不确定此时在哪里寻找问题。然而,我正在使用我在 CodeProject 上找到的一些代码来捕获鼠标事件和键盘事件 http://www.codeproject.com/KB/cs/globalhook.aspx这可能是它吗?

我正在寻找有关如何捕获此错误的建议。它只发生在 40 台用户计算机上,所以我有点困惑 - 特别是因为该用户是主要利益相关者。

更新: 我们还有一个事件 - 共同点是对接端口。用户使用的是相同的对接端口。

最佳答案

您的代码不可能导致蓝屏死机。如果您没有在内核模式下运行,那么 BSOD 不是您的错(如果您原谅双关语的话)。

OTOH,我看到托管代码在一段内核模式代码中触发了一个错误。然后这个错误导致了 BSOD。在我的例子中,内核模式代码是一个 VPN 软件的一部分,它想要了解你正在运行的代码,以便它可以决定是否允许你访问 VPN。该代码使用内核模式 Hook 来执行此操作,并且他们有一个由加载大量程序集触发的错误。

显然,他们从未在 Visual Studio 运行时测试过代码。它在运行时加载加载项等,这触发了他们的错误。一段简单地将大量程序集加载到 AppDomain(然后卸载 AppDomain 并重新开始)的 C# 代码也触发了他们的错误,因此这不是 Visual Studio 问题。

这个故事的寓意是,有人需要查看故障转储并弄清楚是哪个内核模式软件导致了崩溃,然后也许您可以弄清楚系统中发生了什么来触发内核-模式软件崩溃。

关于c# - 我的 .net 程序导致 BSOD,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3231371/

相关文章:

.net - 拆分容器,制作固定面板

c# - 如何使 WHERE 子句中的项目可选?

c# - 字符串中断反序列化中的空数组

.net - 从 .NET sqlcommand 传递给 SQL 的值不正确

c# - CaSTLe Windsor 解析和泛型

c# - 绑定(bind)属性以在 Winforms 中进行控制

c# - 不使用 Microsoft.Win32 打开文件对话框

c# - 如何在不同的浏览器中获取 Html 文档,当 Html 文档完全加载时作为图像?

java - 定点柏林噪声返回输入点的总和作为输出

c# - 如何检查字符串是否包含列表/数组中的任何字符串