请问服务器端发送给客户端的代码怎么写?(20分)

  • 主题发起人 主题发起人 51zhan.com
  • 开始时间 开始时间
5

51zhan.com

Unregistered / Unconfirmed
GUEST, unregistred user!
客户端代码:<br>procedure Tfrmp2pClient.Button1Click(Sender: TObject);<br>begin <br>IdUDPClient1.Send(Edit1.Text); <br> //通过Inde Client UDP发送信息 <br>end;<br><br>服务器端代码:<br>procedure Tfrmp2pServer.IdUDPServer1UDPRead(Sender: TObject;<br> &nbsp;AData: TStream; ABinding: TIdSocketHandle);<br>var<br> TempStrem :TStringStream;<br> //定义一个接收数据字符串流<br>begin<br> TempStrem := TStringStream.Create('');<br> TempStrem.CopyFrom(AData,AData.Size);<br> //将接收的数据流转按为字符串流<br> Memo1.Lines.Add(TempStrem.DataString);<br> //显示字符串流<br>end;
 
服务器端代码:<br>procedure Tfrmp2pServer.IdUDPServer1UDPRead(Sender: TObject;<br> &nbsp;AData: TStream; ABinding: TIdSocketHandle);<br>var<br> TempStrem :TStringStream;<br> //定义一个接收数据字符串流<br>begin<br> TempStrem := TStringStream.Create('');<br> TempStrem.CopyFrom(AData,AData.Size);<br> //将接收的数据流转按为字符串流<br> Memo1.Lines.Add(TempStrem.DataString);<br> //显示字符串流<br><br>UDPServer.send(Abinding.peerIP,Abinding.peerport,buf,sizeof(buf));//当接收到客户端信息给客户端发送信息<br>end;
 
那请问我在服务器端发给showmessage('ok')给客户端代码如何写?
 
我也想知道,等高手
 
你要自己定义一个通信协议.比如说:你定义一个记录集:<br><br>type xxx = packed record<br> &nbsp; &nbsp;Head : integer;<br> &nbsp; &nbsp;body : String;<br>end;<br><br>这个记录集是服务器端和客户端可以共同使用的.<br>在服务器端:<br>var<br> &nbsp; &nbsp; a : xxx;<br> &nbsp; &nbsp; a.Head := 1;<br> &nbsp; &nbsp; a.body := 'ok';<br><br>Send(Abinding.PeerIP,Abinding.peerport,a,sizeof(a));<br><br>当客户端接收到数据时:<br>var<br> &nbsp; &nbsp;b : xxx<br> &nbsp; &nbsp; &nbsp; <br> &nbsp; AData.Read(a,sizeof(a));<br> &nbsp; if a.Head = 1 then<br> &nbsp; &nbsp; &nbsp; ShowMessage(a.Body);<br>这是最简单的方法了...<br>你要自己先定义一个双方通信的协议才可以进行通信的.
 
后退
顶部