desarrollosconsejeria/adtos-aula/1.7-0/adtoscuestion/clrespuesta.pas @ 23a384b9
a2ba555f | Elisa | unit clrespuesta;
|
|
{$mode objfpc}{$H+}
|
|||
interface
|
|||
uses
|
|||
Classes, SysUtils,IdTCPClient;
|
|||
type
|
|||
ThrRespuesta = class(TThread)
|
|||
private
|
|||
fhost,fcomando:string;
|
|||
fcliente:TIdTcpClient;
|
|||
procedure cerrar;
|
|||
protected
|
|||
procedure Execute; override;
|
|||
public
|
|||
constructor Create(host,comando:string);
|
|||
end;
|
|||
implementation
|
|||
uses main;
|
|||
const
|
|||
23a384b9 | Elisa | PUERTO:integer=38255;
|
|
a2ba555f | Elisa | constructor ThrRespuesta.Create(host,comando:string);
|
|
begin
|
|||
inherited Create(true);
|
|||
fhost:=host;
|
|||
fcomando:=comando;
|
|||
FreeOnTerminate:=True;
|
|||
end;
|
|||
procedure ThrRespuesta.Execute;
|
|||
begin
|
|||
try
|
|||
try
|
|||
fcliente:=TidTcpClient.create(nil);
|
|||
try
|
|||
fcliente.Host:=fhost;
|
|||
fcliente.port:=PUERTO;
|
|||
fcliente.ConnectTimeout:=1000;
|
|||
fcliente.connect;
|
|||
fcliente.GetResponse(200);
|
|||
fcliente.sendCmd(fcomando,260);
|
|||
finally
|
|||
fcliente.Disconnect;
|
|||
fcliente.free;
|
|||
end;
|
|||
finally
|
|||
synchronize(@cerrar);
|
|||
end;
|
|||
except
|
|||
writeLn('Error al enviar respuesta');
|
|||
end;
|
|||
end;
|
|||
procedure ThrRespuesta.cerrar;
|
|||
begin
|
|||
frmmain.finalizar;
|
|||
end;
|
|||
end.
|