'************************************************************
' 第一次写 vbs 。写得不好,还请高手指点。。
' 使用时,把StopServerName = 后面的名称替换自己需要的名称就行了。
' 脚本误差 +/- 一分钟。
' 而且也解决了内存占用问题。4M 内存应该影响不大吧?
'************************************************************
Dim NHour,NMin,SleepTime
Dim RunState
strComputer = "."
Const StopServerName = "Dnscache"
Do
Nhour = Hour(Now)
Nmin = Minute(Now)
SleepTime = ( 60 - NMin ) * 60 * 1000
if Nhour > 8 and Nhour < 17 Then
RunState = SetServerState(StopServerName,"Running")
Else
RunState = SetServerState(StopServerName,"Stopped")
End If
‘WScript.Echo "" & SleepTime
WScript.Sleep SleepTime
Loop
Function SetServerState(SName,State)
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_Service",,48)
For Each Item in colItems
If Item.Name = Sname And Item.State = "Running" Then
If Item.State <> State Then
Item.StopService()
End if
ElseIf Item.Name = Sname And Item.State = "Stopped" Then
If Item.State <> State Then
Item.StartService()
End if
End if
Next
End Function
[ Last edited by flyinspace on 2007-4-28 at 11:39 AM ]
本帖最近评分记录
(共 1 条)
点击查看详情
| 评分人 | 分数 | 时间 |
| bjsh |
+12 |
2007-04-29 00:32 |
知,不觉多。不知,乃求知