День добрый господа!
есть запарка с telnet клиентом
часть кода
___________________________
//авторизация
Код:
procedure TForm1.Button1Click(Sender: TObject);
procedure Rd;
var
S: string;
procedure Strip0;
var
I: Integer;
begin
i := 1;
while i <= Length(S) do
begin
if (S[i] = #0) and (S[i - 1] = #13) then
System.Delete(S, i - 1, 2)
else
Inc(i);
end;
end;
begin
S := TN.RecvString;
while S <> '' do
begin
Strip0;
srichedit1.Lines.Add(S);
S := TN.RecvString;
end;
end;
begin
TN := TTelnetSend.Create;
TN.TargetHost := edit1.text;
TN.TargetPort := edit4.text;
TN.Timeout := 500;
TN.TermType := 'dumb';
srichedit1.Lines.Clear;
srichedit1.Lines.Add('connection to host...');
TN.Login;
TN.WaitFor('name');
TN.Send(edit2.text);
TN.Send(#13#10);
TN.WaitFor('password');
TN.Send(edit3.text);
TN.Send(#13#10);
rd;
rd;
rd;
rd;
if
TN.WaitFor(edit6.text) then
srichedit1.Lines.Add('connection established!')
else
srichedit1.Lines.Add('connection is interrupted not the correct data!');
edit5.Focused;
end;
_____________________________________
//отправление комманд
procedure TForm1.Button2Click(Sender: TObject);
procedure Rd;
var
S: string;
procedure Strip0;
var
I: Integer;
begin
i := 1;
while i <= Length(S) do
begin
if (S[i] = #0) and (S[i - 1] = #13) then
System.Delete(S, i - 1, 2)
else
Inc(i);
end;
end;
begin
S := TN.RecvString;
while S <> '' do
begin
Strip0;
srichedit1.Lines.Add(S);
S := TN.RecvString;
end;
end;
begin
TN.Send(scombobox1.text);
TN.Send(#13#10);
TN.Send(edit5.text);
TN.Send(#13#10);
rd;
rd;
rd;
rd;
end;
Админ: Пользуемся тегами для оформления кода.
Проблема заключается в том что вывод в Richedit через несколько строк останавливается, допустим надо считать лог с сервера, посылаю команду лог пошел появилось несколько строк и все вывод закончился, помогите с данной проблемой как продолжить вывод без остановки.
Заранее благодарен