代码之家  ›  专栏  ›  技术社区  ›  bdonlan

为什么SetThreadExecutionState(需要ES_系统_)会阻止显示器断电?[闭门]

  •  0
  • bdonlan  · 技术社区  · 17 年前

    我试图在关闭显示器的同时打开系统,在无人值守的情况下完成下载。为此,我呼吁:

    SetThreadExecutionState(ES_SYSTEM_REQUIRED);
    

    每当我从下载中获得数据时。但是,这似乎也可以防止显示器断电(显示器会根据其配置的调光计时器变暗,但不会完全关闭)。根据 the MSDN entry ,只有在我也通过的情况下才会发生这种情况 ES_DISPLAY_REQUIRED -为什么它被封锁了?

    SetThreadExecutionState ,显示器不会再次开始断电;我必须终止程序才能关闭显示器。然而,它不应该只有在调用时才具有持久性效果吗 ES_CONTINUOUS ?

    2 回复  |  直到 17 年前
        1
  •  1
  •   Sajad Beigjani    16 年前

    如果在没有ES_CONTINUOUS的情况下调用此函数,它将不会继续计算系统和监视器的空闲计时器。因此,必须通过ES_CONTINUOUS的组合传递参数。例如,你可以打电话 而不是 SetThreadExecutionState(需要系统);

        2
  •  0
  •   bdonlan    17 年前

    没关系,看来是这样 the bug

    推荐文章