I search around but i don't find a solution.
I'm using Tserversocket, i have something like this for receive data:

[pascal] data: array[0..400] of char;

procedure TForm1.ServerSocket1ClientRead(Sender: TObject;
Socket: TCustomWinSocket);
begin
datalength:=0;
ServerSocket1.Socket.ReceiveBuf(Data,datalength);
End;[/pascal]

when receiving data i got windows socket error, if i use Socket.ReceiveText instead everything works.
A client can be of any type/application, server have just to store data received for study it ( inverse engineering )

i see that the server receive a lot of #0 ( end string ) so is bugged using receiveText.

any hints?