Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.01.23;
Скачать: CL | DM;

Вниз

Как узнать состояние службы?   Найти похожие ветки 

 
OneFragLeft ©   (2004-12-01 20:13) [0]

Собственно сабж, стоит только добавить, что требуется узнать, состояние стандартных сервисов, конкретно Messenger.
Спасибо.


 
Leonid Troyanovsky   (2004-12-01 21:15) [1]


> OneFragLeft ©   (01.12.04 20:13)  
> Собственно сабж, стоит только добавить, что требуется узнать,
> состояние стандартных сервисов, конкретно Messenger.


QueryServiceStatus ?

--
С уважением, LVT.


 
OneFragLeft ©   (2004-12-01 21:19) [2]

А как получит хэндл процесса?


 
VMcL ©   (2004-12-01 21:26) [3]

>>OneFragLeft ©  (01.12.04 21:19) [2]

Например: OpenProcess, CreateProcess, ShellExecuteEx


 
OneFragLeft ©   (2004-12-01 21:33) [4]

Спасибо большое, но вот ещё вопрос: что указывать в качестве dwProcessId, где можно узнать какой он у определённой службы?


 
VMcL ©   (2004-12-01 21:39) [5]

>>OneFragLeft ©  (01.12.04 21:33) [4]

А зачем, собственно?


 
OneFragLeft ©   (2004-12-01 21:44) [6]

Хм..
HANDLE OpenProcess(
      DWORD dwDesiredAccess, // access flag
      BOOL bInheritHandle, // handle inheritance flag
      DWORD dwProcessId // process identifier
      );


 
VMcL ©   (2004-12-01 21:47) [7]

>>OneFragLeft ©  (01.12.04 21:44) [6]

Не вижу связи OpenProcess с сабджевой темой.


 
OneFragLeft ©   (2004-12-01 21:51) [8]

[3]:)


 
VMcL ©   (2004-12-01 22:01) [9]

>>OneFragLeft ©  (01.12.04 21:51) [8]

[3] - это ответ на [2]. А связи [2] ни с сабджем, ни с [1] я, вообще-то, тоже не вижу.


 
OneFragLeft ©   (2004-12-01 22:05) [10]

BOOL QueryServiceStatus(
    SC_HANDLE hService, // handle of service
    LPSERVICE_STATUS lpServiceStatus  // address of service status structure  
    );

Вот сюда надо хэндл. Поэтому я и спросил как его найти.
OpenProcess дает его, но надо ID проесса. Так?


 
VMcL ©   (2004-12-01 22:10) [11]

>>OneFragLeft ©  (01.12.04 22:05) [10]

Вообще-то здесь хендла процесса в упор нету. Здесь есть хендл сервиса (SC_HANDLE).

Если бы Вы прочитали справку, Вы бы увидели:
hService
[in] Handle to the service. This handle is returned by the OpenService or the CreateService function


В общем случае порядок вызова такой:
OpenSCManager(), OpenService(), QueryServiceStatus(), CloseServiceHandle(), CloseServiceHandle().


 
OneFragLeft ©   (2004-12-01 22:12) [12]

А Вы не подскажите, в каком модуле описана QueryServiceStatus()? Я его что-то найти не могу.


 
OneFragLeft ©   (2004-12-01 22:21) [13]

Ой, я уже нашёл.



Страницы: 1 вся ветка

Текущий архив: 2005.01.23;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.025 c
14-1104905410
ghg
2005-01-05 09:10
2005.01.23
сколько весит первый update для D2005?


3-1103666857
Дима
2004-12-22 01:07
2005.01.23
Как добавить запись в БД


14-1105020507
ceval
2005-01-06 17:08
2005.01.23
Всех с РОЖДЕСТВОМ


1-1105009509
XAdmin
2005-01-06 14:05
2005.01.23
Показ значения переменной в виде сообщения


9-1096872593
Colt1978
2004-10-04 10:49
2005.01.23
Переход на другой уровень (GLSCene)