Проверка работы и перезапуск программы через VBS скрипт

  • 03.11.2016
  • 3 100
  • 0
  • 100.00%
  • 1
  • 15.03.2019
Проверка работы и перезапуск программы через VBS скрипт

Примитивный скрипт для перезапуска на VBScript

Если нужно реализовать проверку работы программы и её перезапуск через VBS скрипт, то вы по нужному адресу. Делается это следующим скриптом:

Set objWMIService = GetObject("winmgmts:\\.\root\cimv2")
Do
Running = False
Set colItems = objWMIService.ExecQuery("Select * from Win32_Process")
For Each objItem in colItems
	If objItem.Name = "Notepad.exe" Then
		Running = True
		Exit For
	End If
Next
If Not Running Then
	CreateObject("WScript.Shell").Run "Notepad.exe", 1, True
End If
WScript.Sleep 30000
Loop

Разберем наиболее важные части скрипта. Одна из самых первых строчек в скрипте устанавливает значение переменной Running в значение False - дальше станет понятно зачем. В строчке If objItem.Name = "Notepad.exe" Then задается имя процесса, который нужно найти в списке процессов на компьютере (именно на компьютере, а не у пользователя!). Затем, если он найден, то строчка Running = True устанавливает переменную Running в значение True. Если же не запущен, то ничего не делается, так как переменная Running уже установлена в значение False.

После этого, если значение Running равно False (строчка If Not Running Then), то происходит запуск нужного исполняемого файла (CreateObject("WScript.Shell").Run "Notepad.exe", 1, True). Затем команд WScript.Sleep 30000 в скрипте указывает приостановить работу скрипта на 30000 миллисекунд (на 30 секунд, но время в vbs скрипте задается именно в миллисекундах). Затем строчка Loop приказывает начать выполнение цикла по новой - с команды Do.

Была ли эта статья Вам полезна?




Добавить комментарий

Ваш адрес email не будет опубликован.

Напоминаем Вам, что Ваше сообщение будет опубликовано только после проверки администратором сайта. Обычно это занимает 1-2 рабочих дня.