Função SetSystemPowerState (winbase.h)
[SetSystemPowerState está disponível para uso nos sistemas operacionais especificados na seção Requisitos. Ele poderá ser alterado ou ficar indisponível em versões subsequentes. Os aplicativos gravados para o Windows Vista e posteriores devem usar SetSuspendState em vez disso.]
Suspende o sistema desligando a energia. Dependendo do parâmetro ForceFlag , a função suspende a operação imediatamente ou solicita permissão de todos os aplicativos e drivers de dispositivo antes de fazer isso.
Sintaxe
BOOL SetSystemPowerState(
[in] BOOL fSuspend,
[in] BOOL fForce
);
Parâmetros
[in] fSuspend
Se esse parâmetro for TRUE, o sistema será suspenso. Se o parâmetro for FALSE, o sistema hibernará.
[in] fForce
Esse parâmetro não tem nenhum efeito.
Valor retornado
Se a energia tiver sido suspensa e restaurada posteriormente, o valor retornado será diferente de zero.
Se o sistema não tiver sido suspenso, o valor retornado será zero. Para obter informações de erro estendidas, chame GetLastError.
Comentários
O processo de chamada deve ter o privilégio SE_SHUTDOWN_NAME . Para habilitar o privilégio SE_SHUTDOWN_NAME , use a função AdjustTokenPrivileges . Para obter mais informações, consulte Alterando privilégios em um token.
Se qualquer aplicativo ou driver negar permissão para suspender a operação, a função transmitirá um evento PBT_APMQUERYSUSPENDFAILED para cada aplicativo e driver. Se a energia for suspensa, essa função retornará somente depois que a operação do sistema for retomada e as mensagens relacionadas WM_POWERBROADCAST tiverem sido transmitidas para todos os aplicativos e drivers.
Essa função é semelhante à função SetSuspendState .
Para compilar um aplicativo que usa essa função, defina a macro _WIN32_WINNT como 0x0400 ou posterior. Para obter mais informações, consulte Usando os cabeçalhos do Windows.
Requisitos
Cliente mínimo com suporte | Windows XP [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2003 [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | winbase.h (inclua Windows.h) |
Biblioteca | Kernel32.lib |
DLL | Kernel32.dll |