Вниз
Скачать: 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.028 c
3-1103199897
Carmen
2004-12-16 15:24
2005.01.23
Неправильно отображаются суммы в диапазоне от 0 до -1


3-1103316384
slart
2004-12-17 23:46
2005.01.23
delphi+SQL+ACCESS


3-1103311296
Julia
2004-12-17 22:21
2005.01.23
Qreport


14-1104225348
Один из местных
2004-12-28 12:15
2005.01.23
Больно, но не смертельно,


1-1105616059
Demir
2005-01-13 14:34
2005.01.23
ComObj?




   Наверх