Delphi的UDP网络传输编程

2025-11-18 01:15:39

1、打开Delphi7集成开发环境,将默认工程的Form1窗体Caption属性设置为:服务端,在窗体上放一个idUDPServer1控件。

Delphi的UDP网络传输编程

2、在uses单元引用加入IdSocketHandle;

在Form1的OnCreate事件方法写如下代码:

procedure TForm1.FormCreate(Sender: TObject);

begin

  idudpServer1.DefaultPort:=5000;

  idudpServer1.Active:=True;

end;

在Form1的OnDestroy事件方法写如下代码:

procedure TForm1.FormDestroy(Sender: TObject);

begin

  idudpServer1.Active:=False;

end;

Delphi的UDP网络传输编程

3、在idUDPServer1控件的OnRead事件方法写如下代码:

procedure TForm1.IdUDPServer1UDPRead(Sender: TObject; AData: TStream;

  ABinding: TIdSocketHandle);

var

  Ds: TStringStream;

begin

  Ds:= TStringStream.Create('');   //接收数据流

  Ds.CopyFrom( AData, AData.Size);

  ShowMessage('接收到消息:'+Ds.DataString); //显示数据流内容

  Ds.Free;

end;

保存工程工程名为ProServer.dpr,F5运行程序,生成ProServer.exe

Delphi的UDP网络传输编程

4、新建一个Delphi工程,更改默认Form1的Caption属性为:客户端,在窗体上放一个idUDPClient1控件和一个Button1控件

Delphi的UDP网络传输编程

Delphi的UDP网络传输编程

5、在Form1的OnCreate事件方法写如下代码:

procedure TForm1.FormCreate(Sender: TObject);

begin

  idUDPClient1.Host:= '127.0.0.1';

  idUDPClient1.Port:= 5000;

  idUDPClient1.Active:= True;

end;

在Form1的OnDestroy事件方法写如下代码:

procedure TForm1.FormDestroy(Sender: TObject);

begin

  idudpClient1.Active:=False;

end;

Delphi的UDP网络传输编程

6、双击Button1进入OnClick事件方法,写代码如下:

procedure TForm1.Button1Click(Sender: TObject);

begin

  idUDPClient1.Send('发送消息abc');

end;

Delphi的UDP网络传输编程

7、F5运行程序,再运行第3步生成的ProServer.exe程序,点击客户端的Button1按钮,服务端弹出对话框,显示客户端传过去的内容,数据传输成功。

Delphi的UDP网络传输编程

Delphi的UDP网络传输编程

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢