Hello Geppy, Here is a working client example for this server:
type TState = (stUser, stData); PData = ^TData; TData = record Name: string[10]; ID: integer; end; TForm1 = class(TForm) Cli: TWSocket; procedure FormCreate(Sender: TObject); procedure CliDataAvailable(Sender: TObject; ErrCode: Word); private State: TState; end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.FormCreate(Sender: TObject); begin AllocConsole; Cli.Addr := '127.0.0.1'; Cli.Port := '20000'; Cli.LineMode := True; Cli.Connect; end; procedure TForm1.CliDataAvailable(Sender: TObject; ErrCode: Word); var Data: TData; Rcvd: string; begin Rcvd := Cli.ReceiveStr; if Rcvd = '' then Exit; WriteLn(Rcvd); case Rcvd[1] of 'W': begin Cli.SendStr('user wilfried'#13#10); State := stUser; end; '+': case State of stUser: begin Cli.SendStr('data ' + IntToStr(SizeOf(TData)) + #13#10); FillChar(Data, SizeOf(TData), 0); Cli.Send(@Data, SizeOf(TData)); State := stData; end; stData: Cli.SendStr('quit'#13#10); end; end; end; --- Rgds, Wilfried [TeamICS] http://www.overbyte.be/eng/overbyte/teamics.html http://www.mestdagh.biz -- To unsubscribe or change your settings for TWSocket mailing list please goto http://www.elists.org/mailman/listinfo/twsocket Visit our website at http://www.overbyte.be