Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Старожил


Сообщения: 210
Благодарности: 76

Профиль | Отправить PM | Цитировать


Вот ещё заготовка:
Код: Выделить весь код
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
Это сообщение посчитали полезным следующие участники:

Отправлено: 14:39, 13-04-2012 | #3