an den Client schicken? ("ROOM." ist der 'identifier' für die Art der Daten die geschickt werden, in diesem Beispiel Chat-Räume)
Anders: Sollte man alle Informationen in einem Batzen schicken, oder sollte man die Informationen lieber aufteilen? Was ist weniger Fehleranfällig?
Öhm.. bist du sicher, dass du deine Übertragungsprozeduren richtig programmiert hast?
Da scheint ein Fehler(?) drin zu sein. Normalerweise müsste er alles übertragen, was du losschickt - auch doppelte Zeichenketten (zB "ROOM.").
Greetz Laurin
Now these points of data make a beautiful line.
And we're out of beta. We're releasing on time.
Laurin, was erzählst du denn da schonwieder... vielleicht solltest du so spät nichts mehr posten
@ptI: Es ist normal das Strings die du einzeln versendet hast zusammen gesetzt ankommen. Dasswegen sollte man an jeden String ein Trennzeichen anhängen. Dazu nehmen zwar die meisten Chr10 oder Chr13, ich würde dazu allerdings Chr28 bis Chr31 benutzen, weil diese auch als Seperator gekennzeichnet sind.
Schreib alle öffenen Räume in eine Datei z.B room.txt diese schickst du an alle Clienten natürlich musst du auch eine Funktion im Clienten schreiben der diese Datei empfängt. Dann lässt du diese Datei auslesen und hast die Offenen Raume
Damit sendest du auch alles auf einmal und hast nicht sonderlich viele Probleme
Ich hab das bei meinen Chatprogramm mit der Online liste (wer alles Online ist) gemacht und des klappt super.
Die Methode ist ja auch nur ein bischen langsamer und resourcenfeindlicher...
Mit Files sollten es wirklich nur die Leute versuchen, die zu faul sind die Comps und Netzwerke der User ein bisl zu schonen
Deem2031 hat geschrieben:@ptI: Es ist normal das Strings die du einzeln versendet hast zusammen gesetzt ankommen. Dasswegen sollte man an jeden String ein Trennzeichen anhängen. Dazu nehmen zwar die meisten Chr10 oder Chr13, ich würde dazu allerdings Chr28 bis Chr31 benutzen, weil diese auch als Seperator gekennzeichnet sind.
Mist, ich habe schon gehofft das man das anders umgehen kann, da ich ziemlich faul bin. Naja, dann muss ich das halt noch implementieren
Ich mache das normal so, dass ich zuerst 4 Bytes als Long schicke, wo die Länge des nachfolgenden Datenpaketes - in dem Fall String - drin steht. So kann er die einzelnen Pakete wunderbar auseinander halten.
Man schreibst sich einfach zwei kleine Procedures zum Senden und Empfangen und Voilà.