darkAge, увы мне, увы: надо-таки проверять. Хотя бы синтаксис.
Пробуйте:
читать дальше »
Код:

Option Explicit
Const lngInterval = 60 ' seconds
Const lngFrequency = 10 ' every 10 seconds
Dim strAddress
Dim objSWbemServicesEx
Dim objSWbemObjectEx
Dim lngCurrentInterval
strAddress = "MyServer" ' or IP address
Set objSWbemServicesEx = WScript.CreateObject("WbemScripting.SWbemLocator").ConnectServer(".", "root\cimv2")
lngCurrentInterval = 0
Do
For Each objSWbemObjectEx In objSWbemServicesEx.ExecQuery("SELECT * FROM Win32_PingStatus WHERE Address = '" & strAddress & "'")
If Not IsNull(objSWbemObjectEx.StatusCode) Then
If objSWbemObjectEx.StatusCode = 0 Then
lngCurrentInterval = 0
End If
End If
Next
If lngCurrentInterval >= lngInterval Then
objSWbemServicesEx.Security_.Privileges.AddAsString "SeShutdownPrivilege", True
For Each objSWbemObjectEx In objSWbemServicesEx.ExecQuery("SELECT * FROM Win32_OperatingSystem")
objSWbemObjectEx.Shutdown
Next
Exit Do
End If
WScript.Sleep lngFrequency * 1000
lngCurrentInterval = lngCurrentInterval + lngFrequency
Loop
Set objSWbemServicesEx = Nothing
WScript.Quit 0