AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Warum ist die Verbindung instabil (PingTimeout) ?
Thema durchsuchen
Ansicht
Themen-Optionen

Warum ist die Verbindung instabil (PingTimeout) ?

Ein Thema von Nils_13 · begonnen am 1. Jul 2007 · letzter Beitrag vom 1. Jul 2007
Antwort Antwort
Nils_13

Registriert seit: 15. Nov 2004
2.647 Beiträge
 
#1

Warum ist die Verbindung instabil (PingTimeout) ?

  Alt 1. Jul 2007, 13:48
Hi,

ich möchte eine Verbindung zu einem IRC-Server herstellen. Nachdem etwas Zeit vergangen ist, wird die Verbindung unterbrochen. Warum ?
Host: irc.euirc.net
Port: 6667
User-ID: controller

Client ist TClientSocket.

Verbindung herstellen:
Delphi-Quellcode:
with Client do
begin
  Host := eHost.Text;
  Port := StrToInt(ePort.Text);
  Open;
end;
ClientConnect:
Delphi-Quellcode:
procedure TfrmMain.ClientConnect(Sender: TObject;
  Socket: TCustomWinSocket);
begin
  with Client.Socket do
  begin
    SendText('NICK testnick');
    SendText('USER ' + eiD.Text + ' "" "'+ eHost.Text +'" :1337');
  end;
end;
Um die Fehlermeldung "ERROR :Closing Link: [...] (Ping timeout)" zu erhalten noch diese Zeile in OnRead:
m.Lines.Add(Socket.ReceiveText);
  Mit Zitat antworten Zitat
Florian H

Registriert seit: 30. Mär 2003
Ort: Mühlacker
1.043 Beiträge
 
Delphi 6 Professional
 
#2

Re: Warum ist die Verbindung instabil (PingTimeout) ?

  Alt 1. Jul 2007, 15:38
Antwortest du auch immer auf die Server-PING-Anfragen?
Florian Heft
  Mit Zitat antworten Zitat
Nils_13

Registriert seit: 15. Nov 2004
2.647 Beiträge
 
#3

Re: Warum ist die Verbindung instabil (PingTimeout) ?

  Alt 1. Jul 2007, 15:41
Der gezeigte Code ist der komplette, also gehe ich mal davon aus, dass ich damit nicht darauf reagiere (bin im Netzwerkgeschäft noch nicht so lange). Wie könnte man denn darauf reagieren ?
  Mit Zitat antworten Zitat
SirTwist

Registriert seit: 28. Sep 2006
196 Beiträge
 
Delphi XE Professional
 
#4

Re: Warum ist die Verbindung instabil (PingTimeout) ?

  Alt 1. Jul 2007, 15:55
Lies Dir mal den RFC 2812 durch, da wird genau beschrieben, wie Server und Client miteinander kommunzieren.

Es gibt doch eine komplette IRC-Komponente, warum nimmst du die nicht. Selbst mit dieser ist es noch sehr aufwändig, einen eigenen Client zu programmieren.

Zu deinem konkreten Problem: Der IRC-Server sendet regelmäßig eine Zeile "PING", worauf der Client innerhalb von x Sekunden mit "PONG" antworten muss. Tut er das nicht, ist er raus.
  Mit Zitat antworten Zitat
Nils_13

Registriert seit: 15. Nov 2004
2.647 Beiträge
 
#5

Re: Warum ist die Verbindung instabil (PingTimeout) ?

  Alt 1. Jul 2007, 16:39
Hm, die einzige Nachricht, die ich vom Server erhalte ist der PingTimeout. Warum das ?
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:55 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz