【问题标题】:How can I determine why the machine came out of suspend?我如何确定机器为何退出挂起状态?
【发布时间】:2009-09-28 22:53:06
【问题描述】:

我希望能够以编程方式确定 Vista 系统为何脱离待机状态 (S3)。任何语言都可以,尽管 .NET 最好。我希望将此代码放入我正在开发的应用程序中。

我正在寻找诸如“媒体中心想要录制节目”、“用户输入唤醒机器”、“Windows 更新计划运行”之类的原因。我在 Google、Bing 和 MSDN 上进行了搜索,但只能找到与 Windows Mobile 相关的内容。

谁能给我指出一个可以提供这些信息的函数或对象?

【问题讨论】:

  • 那么,您想将其嵌入到您正在编写的程序中,还是只是想要一个实用程序来为您提供此信息?
  • 我怀疑您能否获得所需的具体信息。不过,您也许可以从系统日志中获取导致挂起的模块的名称。

标签: windows-vista power-management standby


【解决方案1】:

顶级窗口在唤醒时会收到 WM_POWERBROADCAST 消息,但您只能判断它是自动的(媒体中心、Windows 更新等)还是用户(按下电源按钮等)

【讨论】:

  • 这可能已经足够好了。如果系统日志中有关于它的内容,它可能确实如此,那么我想我可以一起破解一些东西。
猜你喜欢
  • 2022-01-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-06-15
  • 1970-01-01
  • 1970-01-01
  • 2023-03-15
  • 2016-03-10
相关资源
最近更新 更多