Как написать скрипт VBS для проверки веб-сайта, а затем остановить и запустить службу Windows - PullRequest
3 голосов
/ 18 февраля 2011

Мне нужно написать сценарий VBS, чтобы проверить веб-сайт на наличие определенного текста: «Служба недоступна» и «Ошибка в /»

Когда он обнаружит это, мне нужно перезапустить службу Windows «Всемирная публикация»service "

С чего начать?

Любая помощь будет высоко ценится!

Ура!

Andy

1 Ответ

3 голосов
/ 18 февраля 2011

Вы можете проверить на веб-сайте, используя объект MSXML2.XMLHTTP (то есть тот же объект, который Internet Explorer использует для запуска AJAX-запросов) и проверяя код состояния (200 - состояние в порядке, 404 - страница не найдена и т. Д.)

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

в том, что касается запуска службы, на этой странице приведено довольно много примеров работы со службами, из которых это как запустить один (дословно скопировано, не проверено):

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 или нет

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...