Передача текста через Buf с помощью Socket

Передаю текст

var
  s: String;
  I: Integer;
begin
  if ClientSocket1.Active then
  begin
    s := ETransfer.Text;
    I := Length(s);
    ClientSocket1.Socket.SendBuf(s, SizeOf(I));
  end;
end;

Получаю текст

var
  s: String;
  I: Integer;
begin
  I := Socket.ReceiveLength;
  SetLength(s, I);
  Socket.ReceiveBuf(s, I);
  EReceiving.Text := s;
end;

Тип сокета stNonBlocking

Делал передачу 12 раз, каждый раз передавая на один символ больше получаю проблему на картинке ниже. Чем больше текст тем хуже.

введите сюда описание изображения


Ответы (0 шт):