Тема: VBS: Помогите с DateDiff.
Здравствуйте! Скрипт смотрит 2 сервера:
1. 2003R2
2. 2003R2 x64
Если какой-либо перегружался то выдается сообщение - как давно. Все работало несколько месяцев!
Вероятно, после очередных обновлений 1 сервер выдает что он перегружен -720 часов назад(минус не опечатка!), 2 сервер 13 часов назад! перегружались оба вчера!
Поправьте кто силен плиз!:|
strComputer = "server1"
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colOperatingSystems = objWMIService.ExecQuery _
("Select * from Win32_OperatingSystem")
For Each objOS in colOperatingSystems
dtmBootup = objOS.LastBootUpTime
dtmLastBootupTime = WMIDateStringToDate(dtmBootup)
dtmSystemUptime = DateDiff("h", dtmLastBootUpTime, Now)
If dtmSystemUptime < 77 Then
Wscript.Echo dtmSystemUptime
End If
Next
strComputer = "server2"
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colOperatingSystems = objWMIService.ExecQuery _
("Select * from Win32_OperatingSystem")
For Each objOS in colOperatingSystems
dtmBootup = objOS.LastBootUpTime
dtmLastBootupTime = WMIDateStringToDate(dtmBootup)
dtmSystemUptime = DateDiff("h", dtmLastBootUpTime, Now)
If dtmSystemUptime < 77 Then
Wscript.Echo dtmSystemUptime
End If
Next
Function WMIDateStringToDate(dtmBootup)
WMIDateStringToDate = CDate(Mid(dtmBootup, 5, 2) & "/" & _
Mid(dtmBootup, 7, 2) & "/" & Left(dtmBootup, 4) _
& " " & Mid (dtmBootup, 9, 2) & ":" & _
Mid(dtmBootup, 11, 2) & ":" & Mid(dtmBootup,13, 2))
End Function
