![]() |
Telnet-Server
Hallo,
ich muss eine Frage zur Programmierung des Indy-Telnet-Servers in die Runde stellen. Ich wurde jetzt ein wenig von dem Thema überrascht. Zum Testen verwende ich als Client PuTTY. IP und Port eingestellt, gestartet. Mein Server zeigt mir über OnConnect die Verbindung an. Ich sende über PuTTY "123". Über OnExecute lese ich die empfangenen Zeichen aus: line:= AContext.Connection.IOHandler.ReadLn; --> In line stehen keine verwertbaren Zeichen Der Server sendet dem Client über AContext.Connection.IOHandler.WriteLn('Was ist?'); --> auf PuTTY korrekt angezeigt Nun sende ich auf PuTTY wieder "123" und die Zeichen kommen ab sofort perfekt an. Wie bekomme ich es hin, dass bereits die erste Message korrekt übertragen wird? Muss ich beim Connect irgendwelche Zeichensatz-Voreinstellungen übertragen? |
AW: Telnet-Server
Hast Du in den PuTTY-Terminal-Optionen "implicit CR in every LF" eingeschaltet?
|
AW: Telnet-Server
Zitat:
PuTTY ist ja nur als Testclient, am Ende muss mein Server mit verschiedenen Einstellungen klar kommen. |
AW: Telnet-Server
Ich komme dem Problem näher.
Beim ersten OnExecute nach OnConnect steht eine Anzahl Zeichen vor dem eigentlichen Text. Bei weiteren OnExecute der selben Verbindung erscheinen diese nicht mehr, sondern nur der Text. Weiß jemand, um was für Zeichen es sich dabei handelt und wie ich diese im Vorhinein ausschließen kann? |
AW: Telnet-Server
Es liegt definitif an PuTTY. Der Windows-Telnet Client sendet diese Daten nicht vor der ersten Eingabe nach der Verbindung.
|
AW: Telnet-Server
Danke für den Hinweis, ich habe das inzwischen auch schon so vermutet.
Nun habe ich den Test mit dem echten Client fortgesetzt. Im Gegensatz zu PuTTY sendet dieser die echten Daten gleich im ersten Block mit (ich protokolliere mit Wireshark). Mein IdTelnetServer löst OnConnect und gleich OnDisconnect. OnExecute wird nicht ausgeführt. Wie komme ich an die gesendeten Daten heran? |
AW: Telnet-Server
Kann ich bei mir nicht reproduzieren. Hast Du evtl. irgendwelche KeepAlive-Einstellungen?
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:09 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz