var
Stream : TWinSocketStream;
Buffer : array[0 .. 9] of Char;
begin
while (not Terminated) and ClientSocket.Connected do
begin
try
Stream := TWinSocketStream.Create(ClientSocket, 60000);
try
FillChar(Buffer, 10, 0);
if Stream.WaitForData(60000) then
begin
if Stream.Read(Buffer, 10) = 0 then
ClientSocket.Close;
//协议处理程序,需要把数据保存到数据库中,在执行这个过程时报错(键值违反了唯一的约束条件)。
end
else
ClientSocket.Close;
finally
Stream.Free;
end;
except
HandleException;