Autor Beitrag
Piranha
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 31



BeitragVerfasst: Fr 25.07.08 21:21 
Hallo,

ich benutze die Indy Komponenten TClientSocket und TServerSocket.
Ich programmiere testweise einen kleinen Chat, was auch erst sehr gut funktioniert hatte.

Nun Baue ich grade eine Userlist ein. Allerdings ist somit auch ein Protokoll
notwendig geworden. Dadurch müssen machmal viele Pakete sehr schnell hintereinander abgesendet.
Mein Problem ist nun das, einige Pakete dadurch Zusammengepakt werden.

Sende ich zum Beispiel: #CLST und #LISTUser123 ab, dann kommt am Ende '#CLST#LISTUser123' an :(

Da ich erst nur mit der Loopback Adresse getestet/gearbeitet habe, konnte ich die Fehler noch mit Delays beheben. Übers Internet funktioniert das aber nicht mehr.

Hat Jemand eine Lösung wie ich das "Verschmelzen" zweier abgesendeter Pakete verhindern kann?
Xentar
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2077
Erhaltene Danke: 2

Win XP
Delphi 5 Ent., Delphi 2007 Prof
BeitragVerfasst: Fr 25.07.08 21:37 
1. TClientSocket gehört nicht zu den Indies.
2. Denk dir ein Start- und Endezeichen für dein Protokoll aus. Somit siehst du immer, wann ein Paket aufhört und das nächste anfängt.
"Vorgesehen" sind hierfür die Zeichen $02 = Start of text und $03 = End of text.

_________________
PROGRAMMER: A device for converting coffee into software.
Narses
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Administrator
Beiträge: 10185
Erhaltene Danke: 1261

W11x64
TP3 .. D7pro .. D10.2CE
BeitragVerfasst: Sa 26.07.08 10:08 
Moin und :welcome: im Forum!

user profile iconPiranha hat folgendes geschrieben:
Mein Problem ist nun das, einige Pakete dadurch Zusammengepakt werden.
Hier ist ein FAQ-Beitrag zur Erläuterung. :idea:

user profile iconPiranha hat folgendes geschrieben:
Hat Jemand eine Lösung wie ich das "Verschmelzen" zweier abgesendeter Pakete verhindern kann?
Hier gibt es ein Tutorial dazu. ;)

cu
Narses

_________________
There are 10 types of people - those who understand binary and those who don´t.
Piranha Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 31



BeitragVerfasst: Sa 26.07.08 18:55 
Danke, deine Tutorials befassen sich genau mit meinem Problem. :zustimm: :flehan:
Zu dumm das ich sie selber nicht gefunden hab.

Damit hat sich er Thread praktisch erledigt.