Hola mosco.
Si el problema es el protector de pantalla, otra opción es desactivarlo temporalmente y luego del proceso activarlo. (
Zarko Gajic)
Por ejemplo:
Código Delphi
[-]
function ActivateScreenSaver(Activate: boolean): boolean;
var
IntActive: byte;
begin
if Activate then
IntActive := 1
else
IntActive := 0;
Result := SystemParametersInfo(
SPI_SETSCREENSAVEACTIVE, IntActive, nil, 0);
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
Button1.Enabled:=False;
Button2.Enabled:=False;
try
try
ActivateScreenSave(False);
repeat
Application.ProcessMessages;
Memo1.Clear;
BorraBuffer;
EnviaDatos('....');
RecibeDatos;
if DatosConConexion = 0 then break;
Memo1.Font.Size:= 300;
Memo1.Lines.Text := IntToStr(FuerzaSenial);
sleep(500);
until (Button3.Tag = 1) or (Button4.Tag = 1);
finally
ActivateScreenSaver(True)
end;
Memo1.Clear;
Memo1.Font.Size:= 10;
Button1.Enabled:=True;
Button2.Enabled:=True;
Button3.Tag:= 0;
Button4.Tag:= 0;
except
...
end;
end;
Saludos.