Existe algum aplicativo do Windows que determine qual processo está impedindo que o protetor de tela se torne ativo?
Existe algum aplicativo do Windows que determine qual processo está impedindo que o protetor de tela se torne ativo?
Respostas:
O powercfg está embutido no Windows e permite controlar e visualizar muitas configurações de gerenciamento de energia.
powercfg -energy -trace
Isso criará um log de eventos de gerenciamento de energia muito detalhado, energy-trace.etl. Abra-o com o Visualizador de Eventos e filtre o log por Fonte de Eventos: Kernel-Power, Incluir ID do evento: 62.
Isso deve fornecer eventos parecidos com:
O aplicativo ou serviço \ Device \ HarddiskVolume1 \ games \ Steam \ Steam.exe substituiu as configurações de gerenciamento de energia do usuário com um código 0x3.
O código pode ser diferente, dependendo se a proteção de tela, monitor de suspensão ou outra transição de estado foi impedida.
Event Viewer
| Clique Event Viewer (Local)
na árvore | Action
| Open Saved Log
| abra C:\Windows\System32\energytrace.etl
Diga a ele para converter para o novo formato de log. Funciona em Windows 10.
Executar a powercfg /requests
partir de um prompt de comando do administrador. Por exemplo, o meu impresso:
DISPLAY:
[PROCESS] \Device\HarddiskVolume8\Games\Origin\Origin.exe
Playing video
SYSTEM:
[DRIVER] Realtek High Definition Audio (HDAUDIO\FUNC_01&VEN_10EC&DEV_0900&SUBSYS_10438560&REV_1000\4&9793a48&0&0001)
An audio stream is currently in use.
AWAYMODE:
None.
O que indica que o Origin estava reproduzindo um vídeo e isso impedia a execução do protetor de tela.
Às vezes, apenas alterar o tempo no protetor de tela (não o tipo) para outra coisa, digamos de 10 minutos para 1 e depois voltar para o que você tinha antes, permitirá que o protetor de tela funcione normalmente.
Obrigado a W1N9Zr0 por me apontar na direção certa!
No meu caso, era uma máquina XP Pro (SP3), portanto a opção "energia" não estava disponível. No entanto, a opção "devicequery" indicava que era o mouse ou o teclado. Depois que mudei do teclado PS / 2 que estava usando para um teclado USB, o protetor de tela (e outras opções de energia) entraram em ação de acordo com as configurações.
NOTA: Quando o protetor de tela era definido como 1 minuto, às vezes era acionado, então eu sabia que estava funcionando. Qualquer coisa acima de 1 minuto e o protetor de tela nunca entrariam em ação.
Acho que o culpado é tipicamente um media player. Você pensaria que seria apenas ao reproduzir um vídeo, mas alguns tocadores de música impedem o descanso de tela. Por exemplo, eu tive o Amazon Music e o Groove abertos e pausamos hoje e encontrei minha tela ainda desbloqueada após uma hora.
Não tenho certeza de qual é a culpa, mas suspeito que eles estejam sobre o IDE e o navegador que eu estava executando, os quais deixaram a tela travar.
Eu não conheço nenhum programa que faça isso, mas a maneira de descobrir é através da função GetThreadExecutionState () que manterá o valor ES_DISPLAY_REQUIRED se o thread estiver bloqueando a proteção de tela no momento.
Se você aplicar esta função a todos os threads do sistema e chamar GetProcessIdOfThread no thread encontrado, você encontrará o processo que está bloqueando o protetor de tela.