Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   Скрипт запускающий или проверяющий на работоспособность службу (http://forum.oszone.net/showthread.php?t=232731)

O L E G 13-04-2012 11:47 1898773

Скрипт запускающий или проверяющий на работоспособность службу
 
Помогиде написать скрипт,который каждые 10 секунд будет запускать или проверять на работоспособность службу browser
на cmd я сделал!
Код:

:x ;
ping -n 10 127.0.0.1 >nul
net start browser >nul
goto x ;

Но мне надо на VBS

Iska 13-04-2012 14:34 1898861

Тупо — раз:
читать дальше »
Код:

Option Explicit

Dim objSWbemServicesEx

Set objSWbemServicesEx = WScript.CreateObject("WbemScripting.SWbemLocator").ConnectServer(".", "root\cimv2")

Do
        objSWbemServicesEx.Get("Win32_Service.Name='Browser'").StartService()
        WScript.Sleep 10 * 1000
Loop

Set objSWbemServicesEx = Nothing

WScript.Quit 0


или — два:
читать дальше »
Код:

Option Explicit

Dim objShell

Set objShell = WScript.CreateObject("Shell.Application")

Do
        objShell.ServiceStart "Browser", False
        WScript.Sleep 10 * 1000
Loop

Set objShell = Nothing

WScript.Quit 0


Поясните Вашу глобальную цель.

DmitriiV 13-04-2012 14:39 1898862

Вот ещё заготовка:
Код:

Dim objFS, objFile, strLog
Dim objWMI, objCollection, objItem
Dim strService, blnHasError, intTemp, strTemp

strService = "browser"
'strLog = "BrowserService_State.log"
'Set objFS = CreateObject("Scripting.FileSystemObject")
'strLog = objFS.BuildPath(objFS.GetParentFolderName(WScript.ScriptFullName), strLog)
On Error Resume Next
While Hour(Time) < 18
        Set objWMI = GetObject("winmgmts:\\.\root\cimv2")
        If Err.Number = 0 Then
                Set objCollection = objWMI.ExecQuery("SELECT * FROM Win32_Service WHERE Name='" & strService & "'")
                If Err.Number = 0 Then
                        If objCollection.Count > 0 Then
                                blnHasError = False
                                For Each objItem In objCollection
                                        If StrComp(objItem.State, "Running", vbTextCompare) <> 0 Then
                                                If StrComp(objItem.StartMode, "Disabled", vbTextCompare) = 0 Then
                                                        intTemp = objItem.ChangeStartMode("Automatic")
                                                        If intTemp <> 0 Then
                                                                intTemp = objItem.ChangeStartMode("Manual")
                                                                If intTemp <> 0 Then blnHasError = True
                                                        End If
                                                End If
                                                If blnHasError Then
                                                        strTemp = Now & vbNewLine & "Ошибка изменения режима запуска службы: " & intTemp
                                                Else
                                                        intTemp = objItem.StartService
                                                        If intTemp = 0 Then
                                                                strTemp = Now & vbNewLine & "Служба запущена."
                                                        Else
                                                                strTemp = Now & vbNewLine & "Ошибка при запуске службы: " & intTemp
                                                        End If
                                                End If
                                        Else
                                                strTemp = Now & vbNewLine & "Служба работает."
                                        End If
                                Next
                                Set objItem = Nothing
                        Else
                                strTemp = Now & vbNewLine & "Служба не найдена."
                        End If
                Else
                        strTemp = Now & vbNewLine & "Ошибка выполнения запроса: " & Err.Number & vbNewLine & Err.Description
                        Err.Clear
                End If
                Set objCollection = Nothing
        Else
                strTemp = Now & vbNewLine & "Ошибка подключения к WMI-пространству: " & Err.Number & vbNewLine & Err.Description
                Err.Clear
        End If
        Set objWMI = Nothing
        'Set objFile = objFS.OpenTextFile(strLog, 8)
        'If Err.Number = 0 Then
        '        objFile.WriteLine strTemp
        '        objFile.Close
        'Else
        '        Err.Clear
        'End If
        'Set objFile = Nothing
        WScript.Sleep 10000
Wend
'Set objFS = Nothing
WScript.Quit 0


O L E G 13-04-2012 16:02 1898920

DmitriiV, Благодарю, то что надо


Время: 15:00.

Время: 15:00.
© OSzone.net 2001-