Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Сети > Проскакивает событие


Автор: Zlo 30.8.2009, 00:43
Товарище знающие подскажите плиз, делаю так:
Код

    {============================================================================}
    host:='ya.ru';
    port:=80;
    TelnetConnect:=false;
    Form1.ClientSocket1.Host:=host;
    Form1.ClientSocket1.Port:=port;
    try
    Form1.ClientSocket1.Active:=true;
    except
    end;
    Form1.ClientSocket1.Active:=false;
    if TelnetConnect=false then begin
       ListView1.Items.Item[3].ImageIndex:=3;
    end else ListView1.Items.Item[3].ImageIndex:=2;
     {============================================================================}
end;

procedure TForm1.ClientSocket1Connect(Sender: TObject;
  Socket: TCustomWinSocket);
begin
    Memo2.Lines.Add('Ïîäêëþ÷åíî');
    TelnetConnect:=true;
    //Form1.ClientSocket1.Active:=false;
end;

procedure TForm1.ClientSocket1Disconnect(Sender: TObject;
  Socket: TCustomWinSocket);
begin
    Memo2.Lines.Add('Îòêëþ÷åíî');
end;

procedure TForm1.ClientSocket1Error(Sender: TObject;
  Socket: TCustomWinSocket; ErrorEvent: TErrorEvent;
  var ErrorCode: Integer);
begin
    Memo2.Lines.Add('Îøèáêà: '+IntToStr(ErrorCode));
    ErrorCode:=0;
end;

Но почему код:
Код

procedure TForm1.ClientSocket1Connect(Sender: TObject;
  Socket: TCustomWinSocket);
begin
    Memo2.Lines.Add('Ïîäêëþ÷åíî');
    TelnetConnect:=true;
    //Form1.ClientSocket1.Active:=false;
end;

Выполняется когда уже это выполнилось:
Код

if TelnetConnect=false then begin
       ListView1.Items.Item[3].ImageIndex:=3;
    end else ListView1.Items.Item[3].ImageIndex:=2;

Задача проста, сделать телнет на указаный адрес и порт. если прителнетилось поменять иконку...

Автор: MetalFan 30.8.2009, 10:03
а сокет в каком режиме?

Автор: Zlo 30.8.2009, 10:22
В ctNonBlocking

Автор: MetalFan 30.8.2009, 11:00
поставь блокирующий и будет тебе счастье.

Автор: Zlo 30.8.2009, 14:24
Спасибо! smile Звените, про режим что-то не подумал.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)