Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Windows [игнор отключен] [закрыт для гостей] / статус сервиса / 6 сообщений из 6, страница 1 из 1
01.07.2005, 16:43
    #33145618
Автор:
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
статус сервиса
помогите с решением такой задачи:

выполняется команда
Код: plaintext
sc query messenger

Если результат Running
Код: plaintext
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
        SERVICE_NAME: messenger
        TYPE               :  20   WIN32_SHARE_PROCESS
        STATE              :  4   RUNNING
                                (STOPPABLE,NOT_PAUSABLE,IGNORES_SHUTDOWN)
        WIN32_EXIT_CODE    :  0   (0x0)
        SERVICE_EXIT_CODE  :  0   (0x0)
        CHECKPOINT         : 0x0
        WAIT_HINT          : 0x0
то переменная K=0
если Stoped или Paused
Код: plaintext
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
        SERVICE_NAME: messenger
        TYPE               :  20   WIN32_SHARE_PROCESS
        STATE              :  1   STOPPED
                                (NOT_STOPPABLE,NOT_PAUSABLE,IGNORES_SHUTDOWN)
        WIN32_EXIT_CODE    :  0   (0x0)
        SERVICE_EXIT_CODE  :  0   (0x0)
        CHECKPOINT         : 0x0
        WAIT_HINT          : 0x0

тогда переменная K=1 как это можно осуществить?
...
Рейтинг: 0 / 0
01.07.2005, 19:09
    #33145950
rrrrrrrrrr
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
статус сервиса
Что-то мне подсказывает, что анализировать вывод одной cmd-команды с помощью других - не лучшая затея :)
Я бы sc пользовался только для вывода инфы в текстовый файл, а анализ его делал бы из программы (хоть скрипт, хоть в ListBox в Дельфи грузить). Насколько я знаю, отдельным параметром состояние сервиса ни одна команда cmd не выдаст :(
Буду рад, если ошибаюсь :)
...
Рейтинг: 0 / 0
01.07.2005, 20:09
    #33146019
naPmu3aH
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
статус сервиса
(для эстетов): Нарисовано за семь секунд на левой коленке
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
    & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")

Set colRunningServices = objWMIService.ExecQuery("Select * from Win32_Service")

For Each objService in colRunningServices
    If objService.DisplayName = "Messenger" and objService.State = "Running" Then
       Wscript.Echo "Запущен. Делай раз!"
    End if

    If objService.DisplayName = "Messenger" and objService.State = "Stopped" Then
       Wscript.Echo "Не запущен. Делай два!"
    End if
Next
--
чем дальше в лес, тем больше нас
...
Рейтинг: 0 / 0
01.07.2005, 20:17
    #33146034
Автор:
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
статус сервиса
а как тогда быть?мне нужно чтобы ранился каждый минут 5 скрипт на проверку статуса сервиса...
как тогда делать?дельфяй под рукой нема...на крайний случай васик...
ОЧЧЧЧень нужно.......
...
Рейтинг: 0 / 0
01.07.2005, 20:28
    #33146046
naPmu3aH
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
статус сервиса
Автар жжет

сохраните ЭТО в файл с расширением VBS и запускайте каждые 5 минут из планировщика...
Ну понятно, что вместо Wscript.Echo <bla-bla-bla> нужно добавить необходимые действия.
--
чем дальше в лес, тем больше нас
...
Рейтинг: 0 / 0
01.07.2005, 20:40
    #33146058
автор:
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
статус сервиса
торможу.......даже не вчитывался в скрипт...сорри,мэн, тем более пятница, вечер ;))
...
Рейтинг: 0 / 0
Форумы / Windows [игнор отключен] [закрыт для гостей] / статус сервиса / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]