1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
| type
TSimple_service = class(TService)
Timer1: TTimer;
procedure ServiceStart(Sender: TService; var Started: Boolean);
procedure Timer1Timer(Sender: TObject);
procedure ServiceStop(Sender: TService; var Stopped: Boolean);
private
{ Déclarations privées }
nb_son : integer;
public
function GetServiceController: TServiceController; override;
{ Déclarations publiques }
end;
var
Simple_service: TSimple_service;
implementation
{$R *.DFM}
procedure ServiceController(CtrlCode: DWord); stdcall;
begin
Simple_service.Controller(CtrlCode);
end;
function TSimple_service.GetServiceController: TServiceController;
begin
Result := ServiceController;
end;
procedure TSimple_service.ServiceStart(Sender: TService; var Started: Boolean);
begin
nb_son := 0;
timer1.Enabled := true;
Started := True;
end;
procedure TSimple_service.ServiceStop(Sender: TService; var Stopped: Boolean);
begin
Stopped := true;
end;
procedure TSimple_service.Timer1Timer(Sender: TObject);
begin
if nb_son < 10 then
begin
inc(nb_son);
Try
logmessage('simple_service',EVENTLOG_INFORMATION_TYPE,0,nb_son);
PlaySound('C:\Windows\Media\Ring05.wav', 0, SND_SYNC);
except
if fileexists('C:\Windows\Media\Ring05.wav') then
logmessage('simple_service',EVENTLOG_INFORMATION_TYPE,0,20)
else
logmessage('simple_service',EVENTLOG_INFORMATION_TYPE,0,21);
End;
end
else
Timer1.Enabled := false;
end; |
Partager