delphi 7 中的tcpClient如何接收服务器发送的数据

2024-11-07 13:30:21
推荐回答(1个)
回答(1):

我的是Delphi 6,不知Delphi 7中的netchart示例中用的是什么通信组件?如果是ServerSocket与ClientSocket,则看一看下面的程序:
在Delphi中,用ServerSocket与ClientSocket组件,建立TCP/IP通信非常容易。

1、创建2个应用程序,一个是Server,另一个是Client。

2、Server程序的窗体上放置ServerSocket组件,并设置其port属性(如:设置为5000),并将Active属性设置为True;

3、Client程序的窗体上放置ClientSocket组件,也设置其port属性,与ServerSocket组件的port属性相同,也设置为5000;设置Adress属性为Server程序所在的机器的IP地址。如果Server程序与Client程序在同一台机器上,则设置Address 为127.0.0.1 。
再放一个命令按钮,在OnClick事件中添加一行事件处理程序:
ClientSocket1.Open;

在OnConnect事件中添加事件处理程序:
procedure TForm1.ClientSocket1Connect(Sender: TObject;
Socket: TCustomWinSocket);
begin
memo1.lines.add('已经建立连接...');
end;

4、Server端:利用ServerSocket1.socket.connections[i].sendtext('......')
发送文本。在OnClientRead事件中接收Client端发送来的信息:

procedure TForm1.ServerSocket1ClientRead(Sender: TObject;
Socket: TCustomWinSocket);
begin
memo1.lines.add(socket.ReceiveText);
end;

5、Client端:利用ClientSocket1.Socket.SendText('......')
发送文本。在OnRead事件中接收Server端发送来的信息:

procedure TForm1.ClientSocket1Read(Sender: TObject;
Socket: TCustomWinSocket);
begin
memo1.lines.add(socket.ReceiveText);
end;

行了,可以运行了。