Forum: Netzwerke
by iphi,
1. Okt 2017
Aha, man lernt nie aus...
Kannst Du eine lesbare Zusammenfassung dazu empfehlen?
Nicht, außer dass meine Applikation fertig ist und ich nicht nochmal anfange.
Ich möchte allerdings verstehen, was da abläuft.
Forum: Netzwerke
by iphi,
1. Okt 2017
Äh, das verstehe ich nicht.
Ich habe im Beispiel genau einen Server und einen Client und die sollen miteinander Daten austauschen in beide Richtungen.
Das geht doch nur, wenn beide dieselbe Portnummer benutzen, oder ?!?
Solange die verbunden sind, must doch der lokale Port und der Remote Port gleich sein, oder?
Forum: Netzwerke
by iphi,
1. Okt 2017
1.
Inzwischen arbeite ich zumeist mit Delphi7, die Unterschiede sind aber marginal.
Ich hatte mir vor langer Zeit Delphi8 angeschafft und es praktisch umgehend wieder verworfen. Allein die Installation dauerte endlos, und produzierte Fehlermeldungen ohne Ende. Wenn ich jetzt Coss-Plattform brauche, dann nehme ich Lazarus. Ich finde aber nach wie vor die irre schnelle Compilierung bei D7 extrem...
Forum: Netzwerke
by iphi,
1. Okt 2017
Danke für den Spielwiese-Link, sehr interessant.
Ich habe noch ein paar Ungereimtheiten:
Wenn ich den ServerType auf stThreadBlocking stelle, sendet der Server wie gesagt die vollständigen Datagramme an der Client. Soweit so gut. Ich sehe aber merkwürdige Nebenwirkungen:
1. Wenn sich der client mit dem Server verbindet, wird der OnClientConnect nicht mehr ausgelöst.
2. Dito bei...
Forum: Netzwerke
by iphi,
30. Sep 2017
Gibt es keinen Mechanismus, der den Datenverlust verhindert?
Ich habs eben ausprobiert: Es gehen sogar Daten verloren, wenn ich nur abspeichere, wenn Windows gleichzeitig einen hochpriorisierten Task einschiebt, z.B. beim Öffnen eines neuen Fensters.
P.S.
Ich glaub ich habs. Der Server schickt nicht alle Daten, wenn der Client beschäftigt ist.
Lösung:
Entweder den Server auf Blocking...
Forum: Netzwerke
by iphi,
30. Sep 2017
Hallo,
mein Server sendet eine größere Datenmenge, die der Clientsocket empfangen und auch gleich verarbeiten soll.
Die Datenübertragung geht im Prinzip auch.
Mein Problem:
Wenn ich im OnRead des ClientSocket mehr mache als nur die eingegangenen Daten abzuspeichern (z.B. dekodieren), dann gehen ganze Datenblöcke verloren.
Ich habe das Gefühl, wenn ein neues Datenpaket kommt, wenn der...