【问题标题】:Cause system crash in C# [duplicate]在C#中导致系统崩溃[重复]
【发布时间】:2013-03-02 22:32:29
【问题描述】:

我想编写一个导致系统崩溃的程序。我正在运行 Windows 7 Ultimate 32 位。我正在做一些会强制系统重置的事情。我找到了C-ScrLk C-ScrLk 方法,但我不知道如何在 C# 中做到这一点。如何实现 C# 中的组合键?

【问题讨论】:

标签: c# windows crash bsod


【解决方案1】:

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

【讨论】:

  • 这不是唯一的方法。杀死“csrss.exe”也可以。
  • @codekaizen 是的,我看到了这个答案,但这是一种未记录的方式,可能会在未来版本的 Windows 中消失。 NotMyFault 使用了一种记录在案且干净的方式来做到这一点。
  • 如果“csrss.exe”停止工作,NotMyFault 也会停止工作。这就是它对 Windows 的重要性。
  • NotMyFault 与 csrss 无关。它注入一个驱动程序并调用 KeBugCheck,它已记录在案并且将始终有效。我讨厌依赖无证行为,例如杀死 csrss 来终止系统。它只是偶然起作用。
  • KeBugCheck 一个定义明确的调试工具。在某些事情崩溃之前,它不会在内存上乱涂乱画。它直接触发安全且定义明确的蓝屏。它用于驱动程序开发。甚至还有触发它的硬件。
猜你喜欢
  • 2019-07-12
  • 2013-04-01
  • 1970-01-01
  • 1970-01-01
  • 2014-05-07
  • 2015-02-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多