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

Вниз

как найти числовой ID, путь и описание службы (service)   Найти похожие ветки 

 
Xalexo   (2011-03-22 22:59) [0]

C именем сервиса (lpServiceName\lpDisplayName) и тек. состоянием (dwCurrentState) проблем нет, а вот
как найти числовой ID, путь и описание службы посредством функции EnumServicesStatus [модуль - WINSVC] (или может - какой другой)??? Подскажите пожалуйста...


 
Игорь Шевченко ©   (2011-03-23 00:00) [1]

разве у сервисов есть "числовой ID" ?
описание через QueryServiceConfig2


 
DVM ©   (2011-03-23 00:06) [2]


> как найти числовой ID

PID процесса службы может быть? QueryServiceStatusEx тогда.


 
DVM ©   (2011-03-23 00:10) [3]


> путь

Недостающие функции сам допишешь, там понятно что это:


class function TSCManager.GetConfig(const AServiceName: string;
 const AMachineName: string = ThisMachine): TQueryServiceConfig;
var
 hManager, hSvc: SC_HANDLE;
 BytesNeeded: DWORD;
 PServiceConfig: PQueryServiceConfig;
 LastErr: DWORD;
begin
 hManager := ManagerOpen(SERVICE_QUERY_CONFIG, AMachineName);
 try
   hSvc := ServiceOpen(AServiceName, hManager, SERVICE_QUERY_CONFIG);
   try
     BytesNeeded := 0;
     if QueryServiceConfig(hSvc, nil, 0, BytesNeeded) then
     begin
       LastErr := GetLastError;
       if LastErr <> ERROR_INSUFFICIENT_BUFFER then
         RaiseLastOSError(LastErr);
     end;
     GetMem(PServiceConfig, BytesNeeded);
     try
       Win32Check(QueryServiceConfig(hSvc, PServiceConfig, BytesNeeded, BytesNeeded));
       Result := PServiceConfig^;
     finally
       FreeMem(PServiceConfig);
     end;
   finally
     ServiceClose(hSvc);
   end;
 finally
   ManagerClose(hManager);
 end;
end;

//----------------------------------------------------------------------------

class function TSCManager.GetBinaryPathName(const AServiceName: string;
 const AMachineName: string = ThisMachine): string;
begin
 Result := GetConfig(AServiceName, AMachineName).lpBinaryPathName;
end;


 
Xalexo   (2011-03-28 14:47) [4]

Спасибо всем



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

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

Наверх




Память: 0.47 MB
Время: 0.009 c
15-1299066755
xayam
2011-03-02 14:52
2011.07.03
Ментальные карты


2-1300957256
lewka
2011-03-24 12:00
2011.07.03
пауза при выполнении кода программы


2-1300823978
Xalexo
2011-03-22 22:59
2011.07.03
как найти числовой ID, путь и описание службы (service)


2-1300958713
Дмитрий С
2011-03-24 12:25
2011.07.03
Есть какие нибудь известные грабли Graphics и много-поточности.


15-1300454463
stas
2011-03-18 16:21
2011.07.03
потоковое видео