Показать сообщение отдельно
  #6  
Старый 17.04.2008, 18:53
Аватар для kirflaer
kirflaer kirflaer вне форума
Прохожий
 
Регистрация: 11.03.2008
Сообщения: 7
Репутация: 10
По умолчанию

сервак тож на indy на моей машине, хотя пробывал и наудаленной, если просто через telnet захожу (через cmd), там естественно ошибки нет, порт не занятый (5000), да это в клиенте косяк, только не пойму в чем, как будто что то не освобождается.
Вот еще код для DataAvailable, у клиента, в принципе и кода то больше для telnet в этой проге нет.
Код:
const
    CR = #13;
    LF = #10;
var
    Start, Stop : Integer;
begin
  if Memo1.Lines.Count = 0 then
      Memo1.Lines.Add('');

  Start := 1;
  Stop  := Pos(CR, Buffer);
  if Stop = 0 then
      Stop := Length(Buffer) + 1;
  while Start <= Length(Buffer) do begin
      Memo1.Lines.Strings[Memo1.Lines.Count - 1] :=
          Memo1.Lines.Strings[Memo1.Lines.Count - 1] +
          Copy(Buffer, Start, Stop - Start);
      if Buffer[Stop] = CR then begin
          Memo1.Lines.Add('');
          {$IFNDEF Linux}
          SendMessage(Memo1.Handle, WM_KEYDOWN, VK_UP, 1);
          {$ENDIF}
      end;
      Start := Stop + 1;
      if Start > Length(Buffer) then
          Break;
      if Buffer[Start] = LF then
         Start := Start + 1;
      Stop := Start;
      while (Buffer[Stop] <> CR) and (Stop <= Length(Buffer)) do
          Stop := Stop + 1;
  end;

Admin: Не забываем форматировать код, иначе последуют санкции!
Ответить с цитированием