i got a something like that when i used standard tcp components on delphi 5.

try to store the data in a variable before print it


Code:
procedure TForm1.socketDataAvailable(Sender: TObject; ErrCode: Word);
var 
     temp_data: string;
begin 
     
     temp_data:= socket.ReceiveStr;
     ShowMessage(temp_data);
end;