Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.10.27;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.011 c
1-89385
Checist [root]
2003-10-15 13:54
2003.10.27
Загрузка изображений в Image


3-89165
Rule
2003-10-05 21:41
2003.10.27
Проблемма с извлечением картинки из базы данныз Paradox


1-89370
Anatoly P
2003-10-15 19:35
2003.10.27
Timer


3-89171
Filat
2003-09-26 14:05
2003.10.27
Delphi 7 и SyBase (ASE)?


14-89526
k-man
2003-10-05 10:05
2003.10.27
Rammstein





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский