以编程方式触发BSOD

纯粹出于学术原因。

是否有可能以编程方式导致BSOD在C#/ .NET中的Windows xp / windows 7下发生。

我建议必须有一些肮脏的黑客,或一些易受虐待的漏洞导致这种情况。

我正在寻找一段代码来保证在有限的时间内完成BSOD。

杀死进程“csrss.exe”会导致BSOD。

但是您需要管理员权限才能执行此操作。 我不确定是否有办法纯粹使用受限制的权限。

编辑:

是的,它可以正常工作。 我煮了一个漂亮的小BSOD 🙂

System.Diagnostics.Process.GetProcessesByName("csrss")[0].Kill(); 

使用Process.Start运行导致BSOD的SysInternals NotMyFault工具(它使用潜水员来执行此操作,这是唯一的方法)。

杀死csrss.exe目前也可以使用,但这是一种未记录的方式,可能会在未来的Windows版本中消失。 NotMyFault使用记录清晰的方式来完成它。

我曾经在Windows 7下遇到“问题”,在调试过程中使用Ping :: Send方法导致BSOD。 所以Debugger :: Attach然后ping也可能对你有用。 🙂

创建一个ping。 杀死该计划。 即时bsod由.net 4中的microsoft的tcpip.sys提供。

您将获得一个已锁定页面的进程。 🙂

over ping你的本地主机,它会使你的cpu超载导致bsod。