Ich glaube mal ganz einfach, das würde ich auch ohne den Verweis in dem Post drüber denken, dass du Nach dem Send() viel zu schnell dein Disconnect() aufrufst. Der
TCP-Client beendet dann schon die Verbindung, bevor alles da ist, was da sein sollte. Oder er zeigt dir nur das erste von 2 Paketen an. Das 2. Paket wird dann von dir ignoriert, weil du schon die Verbindung wieder geschlossen hast.
Bernhard