VBScript編寫Windows防止鎖屏腳本程序
背景介紹
有些公司出于安全和保密工作考慮,會(huì)通過 Windows 組策略強(qiáng)制所有辦公電腦在無操作的情況下 5 分鐘或者 10 分鐘自動(dòng)鎖屏,避免無關(guān)人士看到不該看的內(nèi)容。作為程序員,十分反感這種一刀切的方案,一來很容易打斷思路,比如正在寫代碼或者向別人展示時(shí),突然鎖屏了就挺惡心的;二來每次鎖屏后都要輸入密碼,這簡(jiǎn)直就是浪費(fèi)生命,不能忍!
為了解決這個(gè)問題,我們可以編寫一個(gè)簡(jiǎn)單的 vbs 腳本,在鎖屏周期內(nèi)模擬按鍵操作,從而避免 Windows 桌面被鎖屏。之所以使用 vbs 腳本,而不是 Python、JavaScript 等更流行的高級(jí)語言,主要是因?yàn)檫@個(gè)程序的需求特別簡(jiǎn)單,而且 vbs 腳本可以在 Windows 系統(tǒng)中直接運(yùn)行,不需要安裝任何依賴。
腳本程序
下面給出兩個(gè)腳本,你可以將它們命名為 never_lock.vbs 文件(先在 Windows 系統(tǒng)新建一個(gè) txt 文本文件,粘貼代碼,然后修改文件名)。
復(fù)雜版本
Set ws=Wscript.CreateObject("Wscript.Shell")
If ws.expandenvironmentstrings("%strikkeyflag%")=("on")Then
wscript.echo("Screen Never Lockout")
ws.Environment("user").Item("strikkeyflag")="off"
set mi=getobject("winmgmts:win32_process").instances_
for each p in mi
if ucase(p.name)=ucase("wscript.exe")then
p.terminate
End If
Next
wscript.quit
Else
wscript.echo("Screen Never Lockout")
ws.Environment("user").Item("strikkeyflag")="on"
do
set WshShell = CreateObject("WScript.Shell")
WshShell.SendKeys"{ScrollLock}"
wscript.sleep(280000) 'ms
Loop
end if
簡(jiǎn)單版本
'先定義一個(gè)Shell對(duì)象
Set WshShell = WScript.CreateObject("WScript.Shell")
'設(shè)置成正需要接續(xù)的時(shí)間
do
'設(shè)置成比屏保時(shí)間短點(diǎn)就可以
WScript.Sleep 60000 '1min 60000ms
WshShell.SendKeys "{ScrollLock}"
loop
在 Windows 系統(tǒng)中雙擊 never_lock.vbs 腳本,即可運(yùn)行。
如需停止腳本,可以按 Ctrl + Shift + Esc 鍵打開任務(wù)管理器,找到 Microsoft ® Windows Based Script Host,結(jié)束任務(wù)即可。
工作原理
你應(yīng)該已經(jīng)猜到,never_lock.vbs 腳本的工作原理就是通過定時(shí)按一次 Scroll Lock 鍵,讓系統(tǒng)認(rèn)為一直有人為操作,只要定時(shí)時(shí)間在鎖屏周期以內(nèi),就可以達(dá)到避免鎖屏的效果。
Scroll Lock 即“滾動(dòng)鎖定鍵”,是一個(gè)現(xiàn)存于大部分鍵盤上的按鍵,通常附有一個(gè)指示按鍵開關(guān)情況的燈號(hào)。這個(gè)按鍵曾經(jīng)用來鎖定所有軟件的滾動(dòng)功能,但已不為現(xiàn)今大部分軟件所使用。因?yàn)檫@個(gè)按鍵已經(jīng)不常用,所以部分鍵盤(例如筆記本)已經(jīng)移除了這個(gè)鍵。不過系統(tǒng)還是保留了 Scroll Lock 按鍵的定義,因此我們可以借助這個(gè)沒什么用的按鍵完成防止鎖屏的功能,不會(huì)對(duì)系統(tǒng)造成任何影響。
以上就是VBScript編寫Windows防止鎖屏腳本程序的詳細(xì)內(nèi)容,更多關(guān)于windows防鎖屏VBScript腳本的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
VBS教程:函數(shù)-TypeName 函數(shù)
VBS教程:函數(shù)-TypeName 函數(shù)...2006-11-11
一些經(jīng)典的主要用戶黑客的vbs腳本結(jié)合echo的dos下實(shí)現(xiàn)
一些經(jīng)典的主要用戶黑客的vbs腳本結(jié)合echo的dos下實(shí)現(xiàn)...2007-02-02
可以得到當(dāng)前系統(tǒng)信息的腳本sysinfo.vbs
可以得到當(dāng)前系統(tǒng)信息的腳本sysinfo.vbs...2007-02-02
查看或修改Windows系列系統(tǒng)的序列號(hào)的vbs
查看或修改Windows系列系統(tǒng)的序列號(hào)(包括:2000,xp,2003),支持命令行2008-06-06

