我希望製作一個應用程序,該應用程序始終在後臺運行的窗口中,當我的計算機的屏幕保護程序啓用時切換滾動鎖定,然後在禁用時切換回切換(如果可能)。當屏幕保護程序激活時,切換SCROLL LOCK
原因是我有一個鍵盤根據滾動鎖定燈的狀態點亮。當我不使用鍵盤時,讓鍵盤自動關閉燈光會很酷。
我知道VBscript中的一些代碼,一些在Python中,還有很多在VB中。我一直在使用從this的代碼片段,並把它試圖進入這個:
strComputer = "computername"
Set wshShell =wscript.CreateObject("WScript.Shell")
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colProcesses = objWMIService.ExecQuery("Select * from Win32_Process")
Do
WScript.Sleep 300
For Each objProcess In colProcesses
If Right(objProcess.Name, 4) = ".scr" Then
wshShell.SendKeys "{SCROLLLOCK}"
End If
Next
Loop
僅當程序時,屏幕保護程序已經上運行哪些工作。 如果屏幕保護程序開啓,請幫助我瞭解如何在每300個滴答聲中進行檢查,或者告訴我如何使用標題中列出的其他語言之一。
乍一看,您的代碼對我來說看起來並不正確。它可能需要長達5分鐘才能檢測到屏幕保護程序,但這是我看到的唯一問題。如果屏幕保護程序啓動並且程序已經運行(並且您等待了5分鐘),會發生什麼情況? – Syberdoor
@Sberberry爲什麼5分鐘? – Jared
對不起,我很困惑。我以某種方式假定vbscript睡眠在幾秒鐘內就像c樣式的睡眠而不是毫秒......忘記我所說的,下面的ansgars回答將是正確的,儘管 – Syberdoor