HSG

Aktuelle Seite: HSG/Fächer/Informatik/Material

Socketprogrammierung - Telnet

Prototyp

Quelltext-Auszug

procedure TClientForm.bConnectClick(Sender: TObject);
begin
  Socket.Addr   := eAdresse.Text;
  Socket.Proto  := 'tcp';
  Socket.Port   := ePort.Text;
  Socket.Connect;              // versuche, Verbindung aufzubauen
  // nach dem effektiven Aufbau wird OnSessionConnected ausgelöst
end;

procedure TClientForm.SocketSessionConnected(Sender: TObject; Error: Word);
begin
  FError := Error;      // Fehlercode merken
  if Error  0
  then
    mMeldungen.Lines.Add('keine Verbindung, Fehlernummer: ' + IntToStr(Error))
  else
    mMeldungen.Lines.Add('Verbindung steht!');
  bDisconnect.Enabled := true;
  bConnect.Enabled    := false;
end;

procedure TClientForm.SocketDataAvailable(Sender: TObject; Error: Word);
begin
  mEin.Lines.Add(Socket.ReceiveStr);
end;

procedure TClientForm.bSendenClick(Sender: TObject);
begin
  Socket.Text := mAus.Text;
end;

procedure TClientForm.bDisconnectClick(Sender: TObject);
begin
  Socket.Close;
  // beim effektiven Schluss wird OnSessionClosed ausgelöst
end;

procedure TClientForm.SocketSessionClosed(Sender: TObject; Error: Word);
begin
  if FError = 0
  then
    if Error  0
    then
      mMeldungen.Lines.Add('Verbindung beendet, Fehlernummer: ' + IntToStr(Error))
    else
      mMeldungen.Lines.Add('Verbindung beendet!');
  bDisconnect.Enabled := false;
  bConnect.Enabled    := true;
end;

Download

telnet1.zip