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

Вниз

как узнать есть ли сервис ?   Найти похожие ветки 

 
ilka ©   (2003-10-14 18:48) [0]

Мастера (и мастерихи если таковые есть) помогите познать истину, а именно то как программно узнать есть ли установленный сервис. Щас это делается так:

var
ScH,Sch2 : SC_HANDLE;
begin
P:=nil;
ScH:=OpenSCManager(nil,nil,SC_MANAGER_CONNECT);
Sch2:=OpenService(Sch, "name",SERVICE_ALL_ACCESS);
if sch2=NULL then
begin
showmessage("error in open");
end;

Какой бы ни был "name": sch2 всегда не равен нулю.


 
clickmaker ©   (2003-10-14 18:52) [1]

А так

Sch2:=OpenService(Sch,"name",SERVICE_ALL_ACCESS);
if (Sch2 = 0) and (GetLastError = ERROR_SERVICE_DOES_NOT_EXIST) then
showmessage("error in open");


 
ilka ©   (2003-10-14 19:00) [2]

в независемости от "name" sch2<>0


 
clickmaker ©   (2003-10-14 19:04) [3]

Ну а GetLastError чё выдает ?


 
ilka ©   (2003-10-14 19:13) [4]

>Ну а GetLastError чё выдает ?
выдает код "0"

проблема в том что надо определить есть ли сервис или его нет, но при вызове OpenService(Sch,"name",SERVICE_ALL_ACCESS); не происзодит ошибки => я не могу использовать этот способ для определения => надо найти либо другой способ или разобраться что в этом не так.


 
clickmaker ©   (2003-10-14 19:24) [5]

Ну не знаю. У меня такой код выдает "Указанная служба не установлена"

ScH:=OpenSCManager(nil,nil,SC_MANAGER_CONNECT or GENERIC_READ);
if (scH <> 0) then begin
Sch2 := OpenService(Sch,"name",SERVICE_ALL_ACCESS);
if sch2 = 0 then
ShowMessage(SysErrorMessage(GetLastError))
else
CloseServiceHandle(sch2);
CloseServiceHandle(sch);
end;


 
ilka ©   (2003-10-14 19:40) [6]

действительно работает даже как-то странно...
ну вообщем персональная благодарность clickmaker-у



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

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

Наверх




Память: 0.48 MB
Время: 0.023 c
4-89641
Pitay
2003-08-23 17:31
2003.10.27
Помогите пожалуйста.. нужно очень!! Симитировать клик мыши...


1-89203
off
2003-10-15 13:57
2003.10.27
Как работать с TChart?


1-89393
Oleg Barsky
2003-10-15 15:01
2003.10.27
Как узнать ASCII-код символа?


6-89445
SergP
2003-08-16 17:30
2003.10.27
О запросах браузера и ответах Web-сервера.


7-89607
Alexander
2003-08-13 09:52
2003.10.27
Как можно подключить сетевой диск на свой компьютер, если нет