Estoy programando un servicio de windows, pero no puedo deternerlo una vez iniciado, se produce este error
Error 1053: El servicio no ha respondido a la petición o inicio del control en un tiempo adecuado.No se que puede estar dando este problema. Voy a agradecer cualquier ayuda o sugerencia que me den, pues nunca he programado un servicio y ya este me tiene varios dias con dolor de cabeza.
procedure TRDCOMService.ServiceStart(Sender: TService;
var Started: Boolean);
begin
ComPort1.Open;
Interactive := True;
ServiceType := stWin32;
StartType := stAuto;
Started := true;
end;
procedure TRDCOMService.ServiceExecute(Sender: TService);
begin
While Not Terminated do
if (ComPort1.InputCount > 80) then FlushBuffer;
end;
procedure TRDCOMService.ServiceStop(Sender: TService;
var Stopped: Boolean);
begin
FlushBuffer;
ComPort1.Close;
Stopped := True;
end;
procedure TRDCOMService.FlushBuffer;
var
Buffer: PChar;
BytesCopy: DWord;
begin
Buffer := AllocMem(ComPort1.InputCount);
Stream := TFileStream.Create('lectura.txt', fmOpenReadWrite);
Stream.Seek(0, soFromEnd);
try
BytesCopy := ComPort1.Read(Buffer^, ComPort1.InputCount);
Stream.Write(Buffer^, BytesCopy);
finally
FreeMem(Buffer);
Stream.Free;
end;
end;