Показать сообщение отдельно
Старый 26.02.2008, 13:44     # 964
Borland
СуперМод
IMHO Консультант 2005-2009
 
Аватар для Borland
 
Регистрация: 14.08.2002
Адрес: Московская ПЛ, ракетный отс
Пол: Male
Сообщения: 14 489

Borland - Гад и сволочь
restarter.cmd
Код:
@echo off
REM Переменная WAITTIME задаёт (паузу в секундах+1)
SET WAITTIME=20

REM Останов службы
net stop "messenger">nul

REM Пауза
ping -n %WAITTIME% localhost>nul

REM Запуск службы
net start "messenger">nul
на примере службы сообщений (В русской версии можно применить "Служба сообщений" вместо messenger; соответственно, Messenger замени на имя своей службы).
Первый пинг проходит сразу, поэтому приходится ставить WAITTIME на 1 больше, чем требуемая пауза. Остальные пинги идут раз в секунду. Поскольку пингуется localhost, временем прохождения пинга можно пренебречь.

Решение гарантированно работоспособно под NT4/2000/XP/2003. В теории и под Vista, но думаю что только при отключённом UAC. Естественно, запускать надо от имени учётной записи, имеющей полномочия на остановку и запуск служб.
С некоторыми службами может не прокатить в силу активной самозащиты последних (антивирусы и т.п.).
Опять же есть службы, при отключении которых система аварийно завершает работу.

добавлено через 10 минут
P.S. ВАЖНО! Кодировка скрипта - CP866, она же ANSI DOS.
Иначе все русские символы будут обрабатываться неправильно.
__________________
Не засоряйте форум "спасибами"! Для выражения благодарности существуют ПС и репутация! Соблюдайте Правила!
Распространенье наше по планете
Особенно заметно вдалеке:
В общественном парижском туалете
Есть надписи на русском языке

В. Высоцкий


Последний раз редактировалось Borland; 26.02.2008 в 13:42.
Borland вне форума