Función SetSystemPowerState (winbase.h)
[SetSystemPowerState está disponible para su uso en los sistemas operativos especificados en la sección Requisitos. En versiones posteriores podría modificarse o no estar disponible. Las aplicaciones escritas para Windows Vista y versiones posteriores deben usar SetSuspendState en su lugar.
Suspende el sistema apagando la alimentación. Según el parámetro ForceFlag , la función suspende la operación inmediatamente o solicita permiso de todas las aplicaciones y controladores de dispositivos antes de hacerlo.
Sintaxis
BOOL SetSystemPowerState(
[in] BOOL fSuspend,
[in] BOOL fForce
);
Parámetros
[in] fSuspend
Si este parámetro es TRUE, el sistema se suspende. Si el parámetro es FALSE, el sistema hiberna.
[in] fForce
Este parámetro no produce resultado alguno.
Valor devuelto
Si la energía se ha suspendido y restaurado posteriormente, el valor devuelto es distinto de cero.
Si el sistema no se suspendió, el valor devuelto es cero. Para obtener información de error extendida, llame a GetLastError.
Comentarios
El proceso de llamada debe tener el privilegio SE_SHUTDOWN_NAME . Para habilitar el privilegio SE_SHUTDOWN_NAME , use la función AdjustTokenPrivileges . Para obtener más información, consulte Cambio de privilegios en un token.
Si alguna aplicación o controlador deniega el permiso para suspender la operación, la función difunde un evento de PBT_APMQUERYSUSPENDFAILED a cada aplicación y controlador. Si se suspende la alimentación, esta función solo devuelve después de que se reanude la operación del sistema y se hayan transmitido mensajes WM_POWERBROADCAST relacionados a todas las aplicaciones y controladores.
Esta función es similar a la función SetSuspendState .
Para compilar una aplicación que usa esta función, defina la macro _WIN32_WINNT como 0x0400 o posterior. Para obtener más información, vea Usar los encabezados de Windows.
Requisitos
Cliente mínimo compatible | Windows XP [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2003 [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | winbase.h (incluye Windows.h) |
Library | Kernel32.lib |
Archivo DLL | Kernel32.dll |