Procedure StartService(ServName: String);
Var
SrvHndl, SCHndl: THandle;
Dummy: PChar;
begin
SCHndl := OpenSCManager(Nil, Nil, MAXIMUM_ALLOWED);
Win32Check(SCHndl <> 0);
Try
SrvHndl := OpenService(SCHndl, PChar(ServName), SERVICE_START Or SERVICE_QUERY_STATUS);
Win32Check(SrvHndl <> 0);
Try
Dummy := Nil;
Win32Check(StartService(SrvHndl, 0, Dummy));
Finally
CloseServiceHandle(SrvHndl);
End;
Finally
CloseServiceHandle(SCHndl);
End;
End;
---
|