Im trying ICS here, i liked a lot, its vry simple and works fine

Im having only a proble,
onDataAvailable event only works in UDP protocol

on TCP the event simply don't trigger :?

What im doing wrong ?

code:

[pascal]procedure TForm1.initsocketClick(Sender: TObject);
begin
socket.Proto := 'tcp';
socket.Port:= '47110';
socket.Addr := '127.0.0.1';
socket.Listen;

end;

procedure TForm1.Button1Click(Sender: TObject);
begin
client.Proto := 'tcp';
client.Port := '47110';
client.Addr := '127.0.0.1';
client.Connect;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
client.SendStr(InputBox('','',''));
end;

procedure TForm1.socketDataAvailable(Sender: TObject; ErrCode: Word);
begin
ShowMessage(socket.ReceiveStr);
end;[/pascal]

if i chage tcp to udp it works fine :?