[EMAIL PROTECTED] wrote: > Here's a sample of my code: > > Procedure TMyServer.ClientDataAvailable(Sender: > TObject; Error: Word); > Begin > With (Sender As TMyClient) Do Begin > If (SomethingBadHappened) Then Begin > SendLine('Error!'); > Shutdown(1); > End; > End; > End;
Your code does not guarantee that all data will be sent to the client. Make sure that ShutDown() is called after all data has been delivered to winsock. Something like that: Procedure TMyServer.ClientDataAvailable(Sender: TObject; Error: Word); Begin With (Sender As TMyClient) Do Begin If (SomethingBadHappened) Then Begin OnDataSent := ClientDataSent; SendLine('Error!'); End; End; End; procedure TMyServer.ClientDataSent(Sender: TObject; ErrCode: Word); begin TWSocket(Sender).OnDataSent := nil; TWSocket(Sender).Shutdown(1); end; -- Arno Garrels [TeamICS] http://www.overbyte.be/eng/overbyte/teamics.html -- To unsubscribe or change your settings for TWSocket mailing list please goto http://www.elists.org/mailman/listinfo/twsocket Visit our website at http://www.overbyte.be