Moin,
was benutzt du eigentlich genau für Komponenten und Einstellungen? Beispielsweise steht in der
Hilfe zu TCustomWinSocket.SendBuf:
Zitat:
Bei nicht-blockierenden Sockets werden die Daten an die WinSock
DLL gesendet, die über eigene interne Puffer verfügt. Wenn WinSock weitere Daten akzeptieren kann, gibt SendBuf sofort die Anzahl der Byte in der Warteschlange zurück. Wenn der interne Puffer von WinSock den gesendeten Puffer nicht mehr aufnehmen kann, gibt SendBuf -1 zurück, und es werden keine Daten in die Warteschlange übernommen. In diesem Fall müssen Sie etwas warten, bis WinSock die sich bereits in der Warteschlange befindlichen Daten gesendet hat und es dann erneut versuchen.
Bei nicht-blockierenden Sockets gibt SendBuf die Anzahl der tatsächlich geschriebenen Bytes zurück.
Du musst also eigentlich den Rückgabewert prüfen und dann ggf. eine Pause einlegen.