c# - significado - ¿Cómo detectar si Windows va a hibernar o suspender?
que es suspender pc (2)
De acuerdo con MSDN , el valor de e.Mode (su controlador de eventos debe tener un segundo parámetro de PowerChangedEventArgs
e) será una enumeración de uno de "Resume", "StatusChange" o "Suspend". Sin embargo, no parece proporcionar más detalles que este, por lo que se supone que si el estado es Suspender, entonces la PC está durmiendo o hibernando.
HTH,
Benjamín
estoy usando
SystemEvents.PowerModeChanged += new PowerModeChangedEventHandler(
SystemEvents_PowerModeChanged
);
para saber cuándo se suspende Windows. ¿Pero cómo sé si se va a hibernar o suspender?
¿Hay un método .Net o PInvoke para hacer esto?
No puede distinguir entre hibernar y suspender.
Una discusión detallada aquí .
El mensaje para llevar es que su pregunta presupone una falsa dicotomía: puede ser hibernación, suspensión o suspensión híbrida ... y cuando el hibrido cambia de suspensión de suspensión a hibernación, el código de usuario ni siquiera se ejecuta (de hecho, es posible que no se esté ejecutando ningún código) , la transición ocurre en caso de pérdida de potencia).
Entonces, cuando ocurre la decisión de dormir de forma híbrida, el sistema no sabe si se reanudará desde la suspensión o desde la hibernación, y no puede decirle lo que no sabe.