Bloqueie o Windows usando a tecla do logotipo do Windows L ao sair do computador ... Concluído!
Eu tenho uma configuração de gerenciamento de energia (configurada através do Painel de Controle) que desliga o monitor após 5 minutos de inatividade, mas mantém a energia ligada o tempo todo, se o laptop estiver conectado à energia. Sob essa configuração, no entanto, o computador não se bloqueia e se torna vulnerável a qualquer tentativa de transeunte para fazer o login, se eu não estiver por perto.
Existe alguma maneira de forçar o bloqueio nessa situação? (Eu posso forçar bloqueio se eu tiver o laptop vai dormir, mas para o acesso imediato eu gostaria de manter a energia ligada quando o laptop está ligado à energia.)
Você pode usar o protetor de tela que só pode ser desativado com uma senha:
Para isso, criei um pequeno script AutoIt. Ele funciona em loop, periodicamente atingindo o valor da função _Timer_GetIdleTime()
de Timers.au3
, se ele ficar maior que um determinado período de tempo, o script executa tsdiscon.exe
e o PC sai para a tela de boas-vindas.
Aqui está o código que usei:
#include <Timers.au3>
const $setpoint = 900000 ; switch by idle time setpoint 900000 ms = 15 minutes
const $interval = 60000 ; check interval 60000 ms = 1 minute
const $tsdisconpath = "C:\WINDOWS\System32\tsdiscon.exe" ; specify the actual path for your OS, this might need to be changed
; eg on my Win 7 HB x64 the file full path is C:\WINDOWS\winsxs\amd64_microsoft-windows-t..es-commandlinetools_31bf3856ad364e35_6.1.7601.17514_none_42d65ed50fa3c682\tsdiscon.exe
$disconnected = false
$idle = 0
while true
$prev = $idle
$idle = _Timer_GetIdleTime()
if $disconnected and $prev > $idle then ; user has logged in again
$disconnected = false ; reset state
endif
if $idle > $setpoint and not $disconnected then
run($tsdisconpath, "") ; exit to welcome screen
sleep(10000)
$disconnected = true
$idle = 0
endif
sleep($interval)
wend
Você precisa especificar o caminho real para o arquivo tsdiscon.exe
em seu sistema operacional.
Eu compilei este código para exe com Aut2Exe (disponível tanto na instalação completa quanto no AutoIt portátil), e coloquei em execução automática. A versão AutoIt foi 3.3.8.1.
Se você deseja sair para a tela de bloqueio, em vez da tela de boas-vindas, use
const $tsdisconpath = "RunDll32.exe user32.dll,LockWorkStation
Uma mosca em uma pomada. Eu tenho que dizer sobre as desvantagens mesquinhas do roteiro que você pode encontrar. Normalmente você não toca no mouse nem no teclado enquanto assiste a filmes, então o roteiro sairá de repente no setpoint, e o filme continuará a reprodução. Também percebi que quando eu acordava o PC após a hibernação e fazia o login, por algum motivo o script detectava que o tempo estava fora e saiu.