Вниз
Скачать: CL | DM;

Старт стоп сервиса   Найти похожие ветки 

← →
maxim161 ©   (2006-01-31 19:31) [0]

В общем, сталкнулся с такой проблемой: Сервис установить\удалить командами servicename /(un)install я могу, а как стартануть\остановить сервис, может быть есть что-то вроде servicename /start...


← →
xShadow ©   (2006-01-31 19:56) [1]

net start и net stop смотри


← →
Джо ©   (2006-01-31 20:11) [2]

Смотри Service functions в SDK. В частности, стартует сервис функция StartServive, приостанавливает и останавливает функция ControlService с соответствующими параметрами, если не ошибаюсь.


← →
Rouse_ ©   (2006-01-31 21:46) [3]

в ServiceName имя сервиса:

procedure StopService;
var
 SCManager, Service: SC_HANDLE;
 ServiceStatus: TServiceStatus;
begin
 SCManager := OpenSCManager(nil, nil, SC_MANAGER_ALL_ACCESS);
 if SCManager <> 0 then
 try
   Service := OpenService(SCManager, ServiceName, SERVICE_STOP);
   if Service <> 0 then
   try
     if not ControlService(Service, SERVICE_CONTROL_STOP, ServiceStatus)
       and (ServiceStatus.dwCurrentState = SERVICE_STOPPED) then
     begin
       ShowMessage("StopService > ControlService: [SERVICE_CONTROL_STOP] " + SysErrorMessage(GetLastError));
       Exit;
     end;
   finally
     CloseServiceHandle(Service);
   end;
 finally
   CloseServiceHandle(SCManager);
 end;      
end;

function RunService: Boolean;
var
 SCManager, Service: SC_HANDLE;
 P: PChar;
begin
 Result := False;
 SCManager := OpenSCManager(nil, nil, SC_MANAGER_ALL_ACCESS);
 if SCManager <> 0 then
 try
   Service := OpenService(SCManager, ServiceName, SERVICE_START);
   if Service <> 0 then
   try
     P := nil;
     Result := StartService(Service, 0, P) or
       (GetLastError = ERROR_SERVICE_ALREADY_RUNNING);
   finally
     CloseServiceHandle(Service);
   end
   else
     Result := GetLastError = ERROR_SERVICE_DOES_NOT_EXIST;
 finally
   CloseServiceHandle(SCManager);
 end;
end;



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.042 c
4-1138348951
maxim161
2006-01-27 11:02
2006.04.16
Сервис и форма


3-1140679150
ViktorZ
2006-02-23 10:19
2006.04.16
Unknown type параметра.


1-1142417495
КиТаЯц
2006-03-15 13:11
2006.04.16
OpenOffice вместо MSExcel


3-1140681806
Чапаев
2006-02-23 11:03
2006.04.16
Программная установка пароля на БД Access (Jet 4.0)


15-1143053426
Зм1й
2006-03-22 21:50
2006.04.16
Xp Home




   Наверх