Еще такой вариант, может слишком быстро идет запись в Telnet?
Попробуйте после каждого посланого символа делать паузу:
Код:
if key=#13 then
Begin
s:=SndTxt.Text;
for i :=1 to length(SndTxt.Text) do
begin
Telnet.SendCh(s[i]);
Sleep(100);
end;
Telnet.SendCh(#13);
sndtxt.Clear;
end;
End;