如何编写VBS脚本来检查网站,然后停止并启动Windows服务

时间:2011-02-18 07:28:27

标签: windows vbscript

我需要编写一个VBS脚本来检查网站上的某些文字:“服务不可用”和“错误/”

当发现这个时,我需要它重新启动Windows服务“全球发布服务”

我从哪里开始?

非常感谢任何帮助!

干杯!

安迪

1 个答案:

答案 0 :(得分:3)

您可以使用MSXML2.XMLHTTP对象(即Internet Explorer用于触发AJAX请求的同一对象)检查网站并检查状态代码(200状态为OK,404未找到页面等)< / p>

dim http: set http = CreateObject("MSXML2.XMLHTTP")
http.open "GET", "http://site.com?param=value", false
http.send

if not http.status = 200 then
    ' something not right, start your service
end if

就启动服务而言,this page有很多使用服务的例子,其中就是如何启动服务(复制逐字,未经测试):

strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
    & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colServiceList = objWMIService.ExecQuery _
    ("Select * from Win32_Service where Name='NetDDE'")
For each objService in colServiceList
    errReturn = objService.StartService()
Next
Wscript.Sleep 20000
Set colServiceList = objWMIService.ExecQuery("Associators of " _
   & "{Win32_Service.Name='NetDDE'} Where " _
        & "AssocClass=Win32_DependentService " & "Role=Dependent" )
For each objService in colServiceList
    objService.StartService()
Next

如果您要启动的服务是IIS,那么您可能会省略http请求,而是直接检测IIS服务是否正在运行