В Windows значительно усовершенствованы функции восстановления служб. Откройте оснастку Управление компьютером (Computer Management), выберите команду Службы и программы > Службы (Serices and Applications > Services) и перейдите на вкладке Восстановление (Recovery), где для каждой службы представлен набор соответствующих действий.

· Ничего не делать (Take no action);

· Перезапуск службы (Restart the service);

· Выполнение программы (Run a user-defined file);

· Перезагрузка компьютера (Reboot a machine).

Для решения этой задачи также можно создать собственный сценарий, выполняемый непрерывно, с помощью командного файла. Например, в следующем сценарии используются программы SC.EXE и SLEEP.EXE из пакета Resource Kit:

:start
sc query spooler > state.txt
find "STOPPED" state.txt
if %errorlevel% EQU 0 goto error
sleep 300
goto start

:error
sc start spooler
sleep 5
goto start

Существует возможность добавить имя сервера (например, \\server query и т.д.), если необходимо контролировать работу удаленного компьютера. Проверка выполняется каждые пять минут, однако, интервал можно изменить, равно как проверять сразу несколько служб.