Главная страница
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-1299283968
dmk
2011-03-05 03:12
2011.07.03
Локализация DELPHI


8-1213428249
Настя
2008-06-14 11:24
2011.07.03
Необходимо обработать исключительную ситуацию


1-1258894985
GreyWolf
2009-11-22 16:03
2011.07.03
Подскажите где взять Static Separator для Dialog Box


15-1300133801
tesseract
2011-03-14 23:16
2011.07.03
аквариум


2-1301350488
Германн
2011-03-29 02:14
2011.07.03
Непонятный глюк.