Função CallNtPowerInformation (powerbase.h)
Define ou recupera informações de energia.
Sintaxe
NTSTATUS CallNtPowerInformation(
[in] POWER_INFORMATION_LEVEL InformationLevel,
[in] PVOID InputBuffer,
[in] ULONG InputBufferLength,
[out] PVOID OutputBuffer,
[in] ULONG OutputBufferLength
);
Parâmetros
[in] InformationLevel
O nível de informações solicitado. Esse valor indica as informações de energia específicas a serem definidas ou recuperadas. Esse parâmetro deve ser um dos seguintes valores de tipo de enumeração POWER_INFORMATION_LEVEL .
Valor | Significado |
---|---|
|
Não há suporte para esse nível de informação. |
|
O parâmetro lpInBuffer deve ser NULL; caso contrário, a função retornará ERROR_INVALID_PARAMETER.
O buffer lpOutputBuffer recebe um ULONGLONG que especifica a contagem de tempo de interrupção, em unidades de 100 nanossegundos, no último tempo de suspensão do sistema. |
|
O parâmetro lpInBuffer deve ser NULL; caso contrário, a função retornará ERROR_INVALID_PARAMETER.
O buffer lpOutputBuffer recebe um ULONGLONG que especifica a contagem de tempo de interrupção, em unidades de 100 nanossegundos, no último momento de ativação do sistema. |
|
O parâmetro lpInBuffer deve ser NULL; caso contrário, a função retornará ERROR_INVALID_PARAMETER.
O buffer lpOutputBuffer recebe uma estrutura PROCESSOR_POWER_INFORMATION para cada processador instalado no sistema. Use a função GetSystemInfo para recuperar o número de processadores. |
|
Não há suporte para esse nível de informação. |
|
Não há suporte para esse nível de informação. |
|
Não há suporte para esse nível de informação. |
|
O parâmetro lpInBuffer deve ser NULL; caso contrário, a função retornará ERROR_INVALID_PARAMETER.
O buffer lpOutputBuffer recebe uma estrutura SYSTEM_BATTERY_STATE que contém informações sobre a bateria do sistema atual. |
|
O parâmetro lpInBuffer deve ser NULL; caso contrário, a função retornará ERROR_INVALID_PARAMETER.
O buffer lpOutputBuffer recebe um valor ULONG que contém o buffer de estado de execução do sistema. Esse valor pode conter qualquer combinação dos seguintes valores: ES_SYSTEM_REQUIRED, ES_DISPLAY_REQUIRED ou ES_USER_PRESENT. Para obter mais informações, consulte a função SetThreadExecutionState . |
|
O parâmetro lpInBuffer deve ser NULL; caso contrário, a função retornará ERROR_INVALID_PARAMETER.
O buffer lpOutputBuffer recebe uma estrutura SYSTEM_POWER_CAPABILITIES que contém os recursos atuais de energia do sistema. Essas informações representam os recursos de energia com suporte no momento. Ele pode mudar à medida que os drivers são instalados no sistema. Por exemplo, a instalação de drivers de dispositivo herdados que não dão suporte ao gerenciamento de energia desabilita todos os estados de suspensão do sistema. |
|
O parâmetro lpInBuffer deve ser NULL; caso contrário, a função retornará ERROR_INVALID_PARAMETER.
O buffer lpOutputBuffer recebe uma estrutura SYSTEM_POWER_INFORMATION . Os aplicativos podem usar esse nível para recuperar informações sobre a ociosidade do sistema. |
|
Se lpInBuffer não for NULL, a função aplicará os valores de SYSTEM_POWER_POLICY passados em lpInBuffer à política de energia do sistema atual usada enquanto o sistema estiver em execução na energia AC (utilitário).
O buffer lpOutputBuffer recebe uma estrutura SYSTEM_POWER_POLICY que contém a política de energia do sistema atual usada enquanto o sistema está em execução na energia AC (utilitário). |
|
O parâmetro lpInBuffer deve ser NULL; caso contrário, a função retornará ERROR_INVALID_PARAMETER.
O buffer lpOutputBuffer recebe uma estrutura SYSTEM_POWER_POLICY que contém a política de energia do sistema atual usada enquanto o sistema está em execução na energia AC (utilitário). |
|
Se lpInBuffer não for NULL, a função aplicará os valores de SYSTEM_POWER_POLICY passados em lpInBuffer à política de energia do sistema atual usada enquanto o sistema estiver em execução na energia da bateria.
O buffer lpOutputBuffer recebe uma estrutura SYSTEM_POWER_POLICY que contém a política de energia do sistema atual usada enquanto o sistema está em execução na energia da bateria. |
|
Se lpInBuffer não for NULL e o usuário atual tiver privilégios suficientes, a função confirmará ou desabilitará o armazenamento necessário para manter a imagem de hibernação no volume de inicialização.
O parâmetro lpInBuffer deve apontar para um valor BOOLEAN que indica a solicitação desejada. Se o valor for TRUE, o arquivo de hibernação será reservado; se o valor for FALSE, o arquivo de hibernação será removido. |
|
Não há suporte para esse nível de informação. |
|
Não há suporte para esse nível de informação. |
|
Não há suporte para esse nível de informação. |
|
Não há suporte para esse nível de informação. |
[in] InputBuffer
Um ponteiro para um buffer de entrada opcional. O tipo de dados desse buffer depende do nível de informações solicitado no parâmetro InformationLevel .
[in] InputBufferLength
O tamanho, em bytes, do buffer de entrada.
[out] OutputBuffer
Um ponteiro para um buffer de saída opcional. O tipo de dados desse buffer depende do nível de informações solicitado no parâmetro InformationLevel . Se o buffer for muito pequeno para conter as informações, a função retornará STATUS_BUFFER_TOO_SMALL.
[in] OutputBufferLength
O tamanho do buffer de saída em bytes. Dependendo do nível de informações solicitado, esse pode ser um buffer de tamanho variavel.
Retornar valor
Se a função for bem-sucedida, o valor retornado será STATUS_SUCCESS.
Se a função falhar, o valor retornado poderá ser um dos seguintes códigos de status.
Status | Significado |
---|---|
|
O buffer de saída é de tamanho insuficiente para conter os dados a serem retornados. |
|
O chamador não tinha direitos de acesso suficientes para executar a ação solicitada. |
Comentários
As alterações feitas na política de energia do sistema atual usando CallNtPowerInformation são imediatas, mas não são persistentes; ou seja, as alterações não são armazenadas como parte de um esquema de energia. Quaisquer alterações na política de energia do sistema feitas com CallNtPowerInformation podem ser substituídas por alterações em um esquema de política feito pelo usuário no programa do painel de controle do Power Options ou por chamadas subsequentes para WritePwrScheme, SetActivePwrScheme ou outras funções de esquema de energia.
Para obter mais informações sobre como usar PowrProf.h, consulte Esquemas de energia.
Requisitos
Requisito | Valor |
---|---|
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 | powerbase.h |
Biblioteca | PowrProf.lib |
DLL | PowrProf.dll |
Confira também
Funções de gerenciamento de energia