Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: -0.976 c
1-1105194168
__esso
2005-01-08 17:22
2005.01.23
TChart


14-1104541077
Yozh_Programmer
2005-01-01 03:57
2005.01.23
Помогите определить исполнителя и название песни?


14-1103697842
syte_ser78
2004-12-22 09:44
2005.01.23
Обращение к Харьковчанам.


9-1097059695
Viman
2004-10-06 14:48
2005.01.23
Header-файлы DirectX 9 для Delphi


14-1104986927
Чеширский_Кот
2005-01-06 07:48
2005.01.23
"Человек в лабиpинте" Роберта Силверберга




   Наверх