VB监控页面打开状态,如打不开则运行批处理

原创 小姚  2020-11-02 16:38  阅读 1,970 次

最近遇到某软件服务频繁卡死,需要手动运行批处理重开服务才能恢复,人为手动干预很麻烦,于是想着写一个VB监控程序。软件卡死有一个特点,访问 http://localhost:3579/页面无法打开,正常时可以打开。写一个程序每分钟检测一次页面,当检测到页面无法开启时,则自动运行批处理重启服务。

VB监控页面打开状态,如打不开则运行批处理-小姚工作室 

首先需要添加 timer控件和inet 控件,如下代码写入到timer控件,timer interval属性设置为60000(60秒运行一次)

有如下两种方法:
一、通过Inet控件获得网页header信息

'通过Inet控件获得网页header信息
Inet1.OpenURL "http://www.hao360.xyz/new.html" '用inet连接网页
If InStr(1, Inet1.GetHeader, "200") > 0 Then '获得header信息,判断页头是否包含字符“200”
MsgBox "网页可以打开!"
Else
shell “cmd.exe /c net stop xxxx & net start xxxx”
End If

二、通过Inet控件获得网页HTML代码
'获得网页HTML代码
Dim szHtml As String
szHtml = Inet1.OpenURL( "http://www.hao360.xyz/new.html" ) '用inet连接网页
If InStr(1,szHtml,"360") > 0 Then '判断网页是否包含某特定字符串
MsgBox "网页可以打开!"
Else
shell “cmd.exe /c net stop xxxx & net start xxxx”
End If

VB监控页面打开状态,如打不开则运行批处理-小姚工作室

但是遇到一个问题,http://localhost:3579/页面是utf-8编码的,VB inet控件只能打开Unicode编码的网页,后来换了一个思维方式,在本地http://localhost:3579/目录重新建一个gb2312编码页面,监测新建的页面就解决了。经过测试,软件可以实现卡死自动重启,具体会有些不同,可根据实际情况修改代码。

本文地址:https://www.xiaoyaogzs.com/3471.html
关注我们:请关注一下我们的微信公众号:扫描二维码小姚工作室的公众号,公众号:小姚户外
版权声明:本文为原创文章,版权归 小姚 所有,欢迎分享本文,转载请保留出处!

发表评论


表情