入域的機器想保持螢幕不關閉,但是Policy不允許,一個小指令碼可以幫你!
阿新 • • 發佈:2018-12-13
大家都懂得。大公司嘛,肯定有規則不允許這不允許那。
那我們運維需要做的就是合理的繞過去,幫助他們得到信任,以後做事就方便了。
案情分析。
某部門需要演示PPT在電視上,需要保持24小時螢幕不會Lock mon,
在此之前,他們一貫用法就是用硬物砸著鍵盤,但是有時候你懂的 肯定會掉落導致又成了lock mon啊,而且這種很愚蠢好不好!
你是IT,你是運維,如果你想技術積累肯定需要自己來啊!
而且大公司一般都有規矩的,不可以隨便下載外網的東西,軟體。
這個時候就可以通過系統自帶的東西來耍了!
不廢話直接上程式碼
dim objWMIService, objprocess, colprocess dim strComputer, strList, ppPresent, i dim oReg, strKeyPath set objshell = WScript.CreateObject("WScript.shell") strcomputer = "." Set objWMIService = GetObject("winmgmts:" _ & "{impersonationLevel=impersonate}!\\" _ & strComputer & "\root\cimv2") i = 1 Do while i = 1 Dim Processnum Processnum=0 set colProcess = objWMIService.ExecQuery("SELECT * FROM Win32_Process") For Each objProcess in colprocess if objprocess.Name="wscript.exe" then if Instr(objprocess.commandline,"WNS_CWD_Lock_Mon") >0 then Processnum=Processnum+1 end if end if next if processnum>1 then msgbox "do not run twice" : wscript.quit objshell.sendkeys "{NUMLOCK}" objshell.sendkeys "{NUMLOCK}" wscript.sleep 6000 loop 'end of script
請複製儲存為WNS_CWD_Lock_Mon.vbs 即可食用。
程式碼解析:
其實關鍵就三句話
objshell.sendkeys "{NUMLOCK}"
objshell.sendkeys "{NUMLOCK}"
wscript.sleep 6000
loop
數字開關鍵 點兩下
sleep 你懂的吧
然後loop。。。
上面的程式碼那麼長是因為加上防止多次點選。
完畢。