| unit
server01;
interface
uses
Windows, Messages, SysUtils, Variants, Classes,
Graphics, Controls, Forms,
Dialogs, StdCtrls, ScktComp;
type
TForm1 = class(TForm)
GroupBox1: TGroupBox;
Label1: TLabel;
Edit1: TEdit;
Label2: TLabel;
CheckBox1: TCheckBox;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
Edit5: TEdit;
GroupBox2: TGroupBox;
Edit6: TEdit;
Button1: TButton;
Memo1: TMemo;
Label7: TLabel;
Label8: TLabel;
Button2: TButton;
ServerSocket1: TServerSocket;
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure ServerSocket1ClientWrite(Sender:
TObject;
Socket: TCustomWinSocket);
procedure ServerSocket1Accept(Sender: TObject;
Socket: TCustomWinSocket);
procedure ServerSocket1ClientRead(Sender:
TObject;
Socket: TCustomWinSocket);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R
*.dfm}
procedure
TForm1.FormCreate(Sender: TObject);
var port:integer;
begin
port:=StrToInt(Edit1.Text);
ServerSocket1.Port:=port;
ServerSocket1.Active:=True;
edit4.text:='Listening ...';
end;
procedure
TForm1.Button1Click(Sender: TObject);
begin
ServerSocket1.Socket.Connections[0].SendText(edit6.text);
edit6.text:='';
end;
procedure
TForm1.ServerSocket1ClientWrite(Sender:
TObject;
Socket: TCustomWinSocket);
begin
Memo1.Lines.Add(Socket.ReceiveText);
end;
procedure
TForm1.ServerSocket1Accept(Sender: TObject;
Socket: TCustomWinSocket);
begin
Checkbox1.Checked:=true;
edit2.text:=Socket.RemoteAddress;
edit3.Text:=Socket.RemoteHost;
edit5.text:=Socket.LocalAddress;
edit4.text:='Connected';
end;
procedure
TForm1.ServerSocket1ClientRead(Sender: TObject;
Socket: TCustomWinSocket);
begin
Memo1.Lines.Add(Socket.ReceiveText);
end;
procedure
TForm1.Button2Click(Sender: TObject);
begin
close;
end;
end. |