mrp*_*atg 2 windows batch-file system-monitoring windows-8 windows-8.1
我有一个媒体服务器(Windows 8)位于我家一个非常不方便的地方。有时我必须重置我的路由器,否则它会自行重置。问题是 PC 由于某种原因失去连接,我被迫走出屋外,绕过房子,走进地下室,翻过一堆玩具、重物和盒子,按下按钮重新启动它。
我希望它每 5-10 分钟检查一次,并在无法 ping 给定地址/IP 时自动重启。
任何想法如何实现这一点?
批处理文件:
ping 192.168.1.1
IF ERRORLEVEL 1 SHUTDOWN -R -T 00
Run Code Online (Sandbox Code Playgroud)
电源外壳:
if (!(Test-Connection 192.168.1.1 -quiet)) {Restart-Computer -Force}
Run Code Online (Sandbox Code Playgroud)
脚本:
If Reachable("192.168.1.1") Then
WScript.Run("shutdown -r -t 00")
End If
Function Reachable(strComputer)
Dim wmiQuery, objWMIService, objPing, objStatus
wmiQuery = "Select * From Win32_PingStatus Where Address = '" & strComputer & "'"
Set objWMIService = GetObject("winmgmts:\\.\root\cimv2")
Set objPing = objWMIService.ExecQuery(wmiQuery)
For Each objStatus in objPing
If IsNull(objStatus.StatusCode) Or objStatus.Statuscode<>0 Then
Reachable = False 'if computer is unreacable, return false
Else
Reachable = True 'if computer is reachable, return true
End If
Next
End Function
Run Code Online (Sandbox Code Playgroud)
这些中的任何一个都可以安排为适合您的时间间隔的任务 - 如果安排以“最高权限”运行,那么将能够克服任何潜在的 UAC 问题。
请记住,这只会检查与路由器的连接。也许值得用 www.google.com 或类似的 IP 替换 IP。让它成为你知道回复的东西(做一个手动 ping)并确保它不是一个容易停机的狡猾站点......你不想要你的电脑白白重启
| 归档时间: |
|
| 查看次数: |
10033 次 |
| 最近记录: |