【问题标题】:Will a Windows bug check (BSOD) turn on the monitor?Windows 错误检查 (BSOD) 会打开显示器吗?
【发布时间】:2011-09-26 23:15:40
【问题描述】:

我正在开发一个部署在 Atom 驱动的平板电脑上的 Windows Embedded Standard 2009 项目。我们正在处理一些已知的 Windows 错误检查崩溃 (BSOD)。我们还有一个错误,即平板电脑在屏幕关闭时变得无响应;需要硬通电才能恢复。我正在追求一个理论,即无响应的平板电脑是屏幕关闭时发生的 BSOD 崩溃。我们打开了 EWF,它可以防止内存转储写入以了解是否发生了 BSOD。我们使用 user32.dll SendMessage(Handle, WM_SYSCOMMAND, SC_MONITORPOWER, MONITOR_OFF) 在用户不活动后关闭显示器。

如果以前以编程方式关闭显示器,Windows 错误检查 (BSOD) 是否会打开显示器?

谢谢!

【问题讨论】:

标签: winapi


【解决方案1】:

不能代表平板电脑,但错误检查不会跳入一长串电源管理例程,只是为了输出它已爆炸的事实。错误检查在物理上尽可能少,因为一旦您处于 BSOD 模式,系统根据定义已经崩溃并且不稳定并且处于高度未知的状态。开始调用其他复杂的子系统不会发生,因为 BSOD 很可能发生在它试图调用的例程中。

【讨论】:

  • 谢谢马克。这是我的预感,但想看看是否有人明确知道。
【解决方案2】:

不,错误检查不会打开监视器(不管它是由于不活动还是您的消息而进入睡眠状态)。

最好的办法是保留一个内核调试器。

【讨论】:

    【解决方案3】:

    虽然错误检查不通过任何电源管理代码,但它确实会执行通常会唤醒监视器的操作。错误检查更改屏幕分辨率并切换到文本模式。如果您连接了内核调试器(或刚刚配置),系统会等待内核调试器响应并且在您点击“g”之前不会显示蓝屏文本。

    在默认配置中,它还会尝试创建故障转储并重新启动。如果您怀疑错误检查,请在 windows 目录中查找 memroy.dmp 或连接内核调试器。

    【讨论】:

    • EWF 确保所有磁盘写入都重定向到 RAMDISK,因此它们会在重新启动时消失。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-18
    • 2021-08-29
    • 2014-03-08
    相关资源
    最近更新 更多