Войти

Показать полную графическую версию : [решено] вопрос: контроль за службой


Страниц : [1] 2 3

foxbat
24-01-2008, 13:05
Добрый час ! Вопрос: можно ли средствами CMD контролировать статус службы (работает, пауза, останов), например может есть команда которая возвращает значение некого кода статуса ? Спасибо.

Petya V4sechkin
24-01-2008, 13:17
sc /?
sc query имя_службы

Пример:
sc query wuauserv

foxbat
24-01-2008, 13:37
имя службы ? я так понимаю это то что в taskmanager написано ? Вот например данный пример работает, а службу такую я не нашёл wuauserv. С другой стороны так которая есть служба не работает, выдает X:\>sc query lsass
[SC] EnumQueryServicesStatus:OpenService FAILED 1060:

Petya V4sechkin
24-01-2008, 13:40
имя службы ? я так понимаю это то что в taskmanager написано ?
Список стандартных служб (http://oszone.net/2517) (столбец Название службы).
Или полный список (служб и драйверов) в разделе реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services

foxbat
24-01-2008, 14:57
Большое спасибо, то что надо. Ещё вопрос напоследок, а это применимо только к службам ? а к процессам нет ? т.е. я хочу сказать если у меня в диспетчере "висит" qip.exe, его можно таким образом контролировать ?

Petya V4sechkin
24-01-2008, 15:03
foxbat, определить, запущен процесс или нет?
Tasklist /?
Tasklist /V /FI "IMAGENAME eq qip.exe"

foxbat
24-01-2008, 15:36
нет немножко не то, в общем я понял что с помощью sc query можно узнать статус службы, теперь надо узнать как его использовать, в общем задача такая, что есть некая служба "Х" и ей по требованию надо сделать останов (net stop X), но она не всегда с первого раза останавливается, надо делать ещё и ещё до тех пор пока не будет остановлена а затем вновь запустить. Мне сказали что такое (батник который контролировал останов службы и вновь её запускал) возможно сделать средствами командного процессора windows. Можно такое сделать ?
P.S. про qip я глупость спросил :)

Vadikan
24-01-2008, 21:02
Мне сказали что такое (батник который контролировал останов службы и вновь её запускал) возможно сделать средствами командного процессора windows. Можно такое сделать ? »
Вот пример на VBS - VBScript Scripting Techniques: Services (http://www.robvanderwoude.com/vbstech_proc_service.html)

amel27
25-01-2008, 09:09
батник который контролировал останов службы и вновь её запускал »что-нибудь типа:@echo off
If "%1"=="" Exit
Set STATUS=RUNNING

@echo Остановка сервиса "%1"...
:LBL0
SC STOP %1 >nul 2>&1
For /F "Tokens=3 Usebackq Delims=: " %%i in (`SC QUERY %1^|FIND "STATE"`) Do SET STATUS=%%i
If NOT "%STATUS%"=="STOPPED" GOTO :LBL0
SC START %1 >nul 2>&1
@echo Произведен перезапуск сервиса!
имя службы передавать как параметр

foxbat
25-01-2008, 15:26
amel27 , у Вас этот скрипт без ошибок отрабатывает ?

HLT
25-01-2008, 16:46
amel27 , у Вас этот скрипт без ошибок отрабатывает ? »
Отрабатывает нормально.
Если у Вас выдает ошибку - сообщение об ошибке сюда

SavmiN
29-01-2008, 23:39
Вот пример на VBS »
и что с этим кодом надо сделать!
сохранить как … и в автозагрузку ??? или в реестр ??? хочу знать! ;)

Vadikan
29-01-2008, 23:42
сохранить как … и в автозагрузку ??? »
Если нужно, чтобы код выполнялся при запуске ОС, то да, в автозагрузку. или в реестр ??? »
Вообще не понял вопроса...

amel27
30-01-2008, 03:32
Если нужно, чтобы код выполнялся при запуске ОС »гм, какой смысл перезапускать службу при загрузке?

Vadikan
30-01-2008, 04:35
гм, какой смысл перезапускать службу при загрузке? »
Да вроде SavmiN в соседней теме (http://forum.oszone.net/thread-7972.html) пытался что-то накрутить со службами, чтобы поведение службы менялось в зависимости от того, под какой учетной записью осуществляется вход.

amel27
30-01-2008, 05:08
в зависимости от того, под какой учетной записью осуществляется вход »

но тогда не "в автозагрузку" а в Logon-скрипт...
это я к тому, что скрипт отработает только если пользователь - локальный админ

foxbat
30-01-2008, 14:44
HLT,
+++
c:\>restar.vbs messenger
+++
Ошибка сценария

Сценарий: c:\resart.vbs
Строка: 1
Символ: 1
Ошибка: недопустимый знак
Код:....
Источник.....

короче ругается на @
Убираем собачку, ругается на Строка 2 Сивол 9 (на кавычки и т.д.). В этих всяких криптах я не чень силён, может тут у меня какой компилятор не правильный ??

Petya V4sechkin
30-01-2008, 14:57
foxbat, пост № 9 - скрипт .cmd, а не .vbs.

foxbat
30-01-2008, 15:40
:) спасибо большое ! Ошибок нет. :)

SavmiN
30-01-2008, 17:31
как я поняв - "сохранить как …" script.cmd ???
да, в автозагрузку » - а как еще по другому заставить скрипт сработать автоматически %) ? а реестр упомянул - возможно скрипт загружать как службу
смысл перезапускать службу при загрузке » - не при загрузке ОС, а при сбое службы ... и как понимаю надо ведь запустить скрипт как то! вот и зашла речь про автозапуск
Logon-скрипт...
отработает только если пользователь - локальный админ » там был вопрос в том чтобы скрипт отрабатывал взависимости от имени влогинившегося пользователя (имеется на ПК два локальных админа - под одним нужна чистая система - а под другим полностью настоенная - с запуском службы "Start" ну и прочего мелкополезного софта ;) ...)
а вот как раз про Logon-скрипт - очень любопытно! поясни!
foxbat, - вы запускаете c:\>restar.vbs messenger » вручную ??




© OSzone.net 2001-2012