来自C#的休眠与来自关闭盖子的休眠-唤醒问题



我在休眠和唤醒事件方面遇到问题。当我使用C#代码进入休眠状态时

Application.SetSuspendState(PowerState.Hibernate, true, false);

一切正常,计算机在事件中唤醒。问题是,当我刚刚关上盖子时,冬眠就开始了。在这种情况下,电脑再也没有回来,启动它的唯一方法是按下电源按钮。当然,我可以将关闭盖子的动作设置为"无",并总是使用应用程序进入休眠状态,但这不是最好的解决方案。

我想知道这两种冬眠状态有什么不同。我以为这应该是一样的,但似乎不是。有没有一种方法可以修改盖子关闭时的休眠操作,使其与C#代码中调用的操作相同?

我发现,在从代码休眠后,当盖子打开时,计算机在预定时间醒来,但当盖子关闭时,计算机试图打开,但立即关闭,无论它是否从代码休眠。当我的笔记本电脑充电时,我发现了这个。当我打开它时,这个led会关闭一秒钟,然后再返回。同样的情况也发生在按计划关闭盖子的情况下。

盖子状态(打开/关闭)似乎是这里的关键。