1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
|
unit Unit3;
interface
uses
Classes, Dialogs, sockets;
type
TServerThread = class(TThread)
TcpServer1: TTcpServer;
procedure TcpServer1Accept(Sender: TObject; ClientSocket: TCustomIpClient);
constructor Create();
private
{ Private declarations }
protected
procedure Execute; override;
end;
var
ServerClientSocket:TCustomIpClient;
implementation
constructor TServerThread.Create();
begin
inherited Create(True);
TcpServer1:=TTcpServer.Create(nil);
TcpServer1.LocalHost:='127.0.0.1';
TcpServer1.LocalPort:='10000';
TcpServer1.BlockMode:=bmThreadBlocking;
TcpServer1.OnAccept:=TcpServer1Accept;
TcpServer1.Open;
end;
procedure TServerThread.Execute;
var
s:string;
begin
while Not Terminated do
begin
s:='';
while s='' do
begin
s:=s+ServerClientSocket.Receiveln;
end;
ShowMessage(s);
end;
end;
procedure TServerThread.TcpServer1Accept(Sender: TObject; ClientSocket: TCustomIpClient);
begin
ServerClientSocket:=TCustomIpClient.Create(nil);
ServerClientSocket:=ClientSocket;
Resume();
end;
end. |
Partager