首页 > 编程 > VBScript > 正文

用vbs记录屏幕保护程序的开始时间和结束时间

2019-10-26 17:59:12
字体:
来源:转载
供稿:网友
问:
您好,脚本专家!如何记录屏幕保护程序的开始时间和结束时间?
-- JS
答:
您好,JS。您知道,一位脚本专家(嘿,谁说“肯定是 Greg”?)年纪大得记得屏幕保护程序刚出现的日子。那时,这类脚本毫无意义。毕竟,屏幕保护程序启动后,每个人都神魂颠倒,从未想过让它结束。事实上,作为计算机支持人员的这位脚本专家首先必须做的一件事就是在每个人的桌面上创建快捷方式,使他们能够随时启动“飞转的小烤炉”。
那时人们很容易得到快乐。
啊,但是活在过去没有意义,对吧?在今天的现代社会中,显然不仅需要停止屏幕保护程序,还需要记录停止的时间。明确这一点后,让我们来看一看下面这个 WMI 事件监控脚本,它会跟踪屏幕保护程序的每次启动和停止:
复制代码 代码如下:

strComputer = "." 
Set objWMIService = GetObject("winmgmts://" & strComputer & "/root/cimv2") 
Set objEventSource = objWMIService.ExecNotificationQuery _ 
    ("SELECT * FROM __InstanceOperationEvent WITHIN 5 WHERE TargetInstance ISA 'Win32_Process'") 
Do While True 
    Set objEventObject = objEventSource.NextEvent() 
        If Right(objEventObject.TargetInstance.Name, 4) = ".scr" Then 
        Select Case objEventObject.Path_.Class 
            Case "__InstanceCreationEvent" 
                Wscript.Echo "Screensaver " & objEventObject.TargetInstance.Name & _ 
                    " started: " & Now 
            Case "__InstanceDeletionEvent" 
                Wscript.Echo "Screensaver " & objEventObject.TargetInstance.Name & _ 
                    " ended: " & Now 
        End Select 
    End If 
Loop 
它看起来的确有点复杂,不是吗?但是别慌:就设计而言,WMI 事件脚本总是看起来有点复杂。幸运的是,这些脚本只是看起来复杂;您会看到,这些脚本实际上并不那么难理解。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

图片精选