我有一个电源管理设置(通过控制面板设置),如果笔记本电脑连接电源,显示器会在闲置 5 分钟后关闭,但会一直保持电源开启。然而,在这种设置下,如果我不在,计算机不会自动锁定,并且任何路人试图登录时,计算机都会受到攻击。
在这种情况下有什么办法可以强制锁定吗?(如果我让笔记本电脑进入睡眠状态,我可以强制锁定,但是为了立即访问,我想在笔记本电脑连接到电源时保持电源开启。)
答案1
Windows logo keyL当您离开计算机时使用锁定 Windows ...完成!
答案2
您可以使用只能通过密码关闭的屏幕保护程序:
- 在开始菜单上,单击控制面板。
- 单击“显示”,然后单击“屏幕保护程序”。
- 在等待框中,选择 5 分钟
- 单击“恢复时,密码保护”,然后单击“确定”。
答案3
为此,我创建了一个小型 AutoIt 脚本。它循环工作,定期检查_Timer_GetIdleTime()
函数值Timers.au3
,如果该值大于一定时间量,则脚本执行tsdiscon.exe
,然后 PC 退出到欢迎屏幕。
下面是我使用的代码:
#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
您必须tsdiscon.exe
为您的操作系统指定文件的实际路径。我使用 Aut2Exe(完整安装版和便携式 AutoIt 中均有提供)将此代码编译为 exe,然后将其置于自动运行状态。AutoIt 版本为 3.3.8.1。
如果您想退出到锁定屏幕而不是欢迎屏幕,则可以使用
const $tsdisconpath = "RunDll32.exe user32.dll,LockWorkStation
美中不足。我不得不说一下您可能会遇到的脚本的小缺点。通常您在观看电影时不会触摸鼠标和键盘,因此脚本会在设定点突然退出,电影将继续播放。我还注意到,当我在休眠后唤醒 PC 并登录时,出于某种原因,脚本会检测到时间已到,然后退出。