Ok, depois de algumas horas de excreções cerebrais, eu fiz este roteiro de powershell ... lá está ele
while($true)
{
$a = Get-WmiObject -ns root/wmi -class wmiMonitorBrightNess
$a1 = $a.Currentbrightness
$b = Get-WmiObject -ns root/wmi -class batterystatus
$b1 = $b.poweronline
start-sleep 1
$b = Get-WmiObject -ns root/wmi -class batterystatus
$b2 = $b.poweronline
If ($b2 -ne $b1)
{
$c = Get-WmiObject -ns root/wmi -class wmiMonitorBrightNessMethods
$c.WmiSetBrightNess(0,$a1)
}
}
Copie no bloco de notas e salve com a extensão ".ps1".
O que acontece é que ele freqüentemente verifica o estado de energia conectado ou não. Se o estado de energia for alterado, o valor de brilho anterior será restaurado.
Eu testei isso no meu laptop com Win8.1, funciona bem.
-
Você pode ajustar a capacidade de resposta modificando o valor
start-sleep
(atualmente é 1 segundo) -
Para executar este script, a política de execução do Powershell deve ser alterada a partir do padrão.
-
Este script é apenas um exemplo teórico, na prática, as janelas do powershell permanecerão abertas, pode ser problemático para alguns. Eu não estou discutindo as maneiras de esconder a janela.