procedure TLightControlService.Control(CtrlCode: DWord); var SvcMgr,Svc: Integer; ServiceStatus:TServiceStatus; begin SvcMgr := OpenSCManager(nil, nil, SC_MANAGER_ALL_ACCESS); if SvcMgr <> 0 then begin try Svc:=OpenService(SvcMgr,PChar(Name),SERVICE_ALL_ACCESS); if Svc <> 0 then begin try ControlService(Svc,CtrlCode,ServiceStatus); finally CloseServiceHandle(Svc); end; end; finally CloseServiceHandle(SvcMgr); end; end; end;
应该例子也很多哇 楼主找找
var
SvcMgr,Svc: Integer;
ServiceStatus:TServiceStatus;
begin
SvcMgr := OpenSCManager(nil, nil, SC_MANAGER_ALL_ACCESS);
if SvcMgr <> 0 then
begin
try
Svc:=OpenService(SvcMgr,PChar(Name),SERVICE_ALL_ACCESS);
if Svc <> 0 then
begin
try
ControlService(Svc,CtrlCode,ServiceStatus);
finally
CloseServiceHandle(Svc);
end;
end;
finally
CloseServiceHandle(SvcMgr);
end;
end;
end;