Am besten wäre ein Thread, nach dem Motto
Delphi-Quellcode:
try
repeat
Application.ProcessMessages;
s := Command_TCP.ReadLn;
if s <> '' then
begin
synchronize (...); // String am Hautthreat weitergeben
end;
until s = '';
except
Command_TCP.Disconnect;
end;