Hallo,
ich hoffe hier kann mir einer weiterhelfen. Mit meinem Latein bin ich am ende und habe keine Ahnung woran das liegen koennte.
Ich habe eine Server / Client Anwendung selber programmiert. Wenn ich den Server und den Clienten auf meinem Rechner starte und beim Clienten die IP 127.0.0.1 eingebe, funktioniert alles tadellos.
Nun wollte ich das uebers Internet ausprobieren. Ich schickte einer Bekannten den Clienten. Sie startet ihn und gab meine aktuelle IP ein. Der Server den ich überwachte erhielt den benutzernamen und das passwort.
Der Server las daraufhin aus einer Datenbank die daten des Benutzers aus und schrieb sie in ein temp. File. Dieses wird dann geöffnet und die daten gesendet!
Zuerst wird die Filegroesse gesendet ( Start:File:1560 )
Danach werden die Daten gesendet (File:smiley:ata:xyz)
Zum Schluss wird dann das ende des Transfers gesendet ( File:End)
Der Client empfängt die Daten und schreibt sie wiederrum in ein Temp. File. Am Ende vergleicht er die Groesse der Datei mit der Groesse die unter start gesendet wurde.
Der Server zeigt an das alles daten erfolgreich gesendet wurden und es kein Fehler auftrat!
Beim Clienten kommen jedoch nur 1360 Bytes an, statt den 1560!
Weiss jemand woran das liegen kann, oder wo die daten verloren gehen?
Es fehlt jedesmal die selbige Zeichenfolge.
das sich die daten überschlagen und zusammengehaengend gesendet werden, wird abgefragt , da ich immer am ende ein prüfzeichen sende und dieses dann abfrage. Also kann ich das ausschliessen das es daran liegt.
Der client und der server kommunizieren auf port 12345. Dieser ist auch freigeschalten auf beiden rechnern!
Das ganze kommuniziert auf dem tcp/ip protokoll.
So nun noch ein paar daten:
Server :
OS W2K Proffesional ( ohne firewall, DSL)
Client:
OS WinXP, Port freigeschalten. Der rechner ist aber hinter einem Router!
Weiss jemand rat?
VLG Alex
