TIdUDPClient控件中文指南

本文详细介绍了TIdUDPClient控件的使用方法,包括属性、方法和事件,适用于实现UDP客户端通信。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

TIdUDPClient控件
用于实现一个UDP客户端

所属单元
IDUDPClient

本控件的通信标准是RFC 768,网址是:http://www.rfc-editor.org/rfc/rfc768.txt

本控件使用Send方法发送数据,远程主机由Host和Port属性指定。

属性

Host:String;
远程计算机名称。用来指定远程计算机系统。该名称可以是IP地址,如“129.71.2.4”,也可以是计算机

名称,如“wvnvm.wvnet.edu”。如果你要访问的目标计算机是UDP客户端所在计算机,Host属性应为“

127.0.0.1”。

Port:Integer;
远程计算机端口号。

ReceiveTimeout: Integer;
指定绑定的socket的访问等待时间。单位毫秒。

Active: Boolean;
指定绑定的socket分派是否可用。
值得注意的是,在IDE环境下,active属性总是返回false。

Binding: TIdSocketHandle;
是只读属性。用来描述发送和接收数据socket。不像TCP,UDP不与远程计算机创建永久的连接。

BroadcastEnabled: Boolean;
该属性用来指定是否广播发送。

BufferSize: Integer;
指定UDP包的最大尺寸。

LocalName: string;
指定本地计算机名称。

Version: string;
指定Indy版本号。只读属性。

方法
procedure Send(AData: string); overload;
向远程计算机发送数据。

procedure SendBuffer(var ABuffer; const AByteCount: integer); overload;
向远程计算机发送数据。

Broadcast(const AData: string; const APort: integer);
向网络上的所有计算机发送数据。(广播)

function ReceiveBuffer(var ABuffer; const ABufferSize: Integer; const AMSec: Integer =

IdTimeoutDefault): integer; overload;
function ReceiveBuffer(var ABuffer; const ABufferSize: Integer; var VPeerIP: string; var

VPeerPort: integer; AMSec: Integer = IdTimeoutDefault): integer; overload;
从远程计算机读取数据。

function ReceiveString(const AMSec: Integer = IdTimeoutDefault): string; overload;
function ReceiveString(var VPeerIP: string; var VPeerPort: integer; const AMSec: Integer =

IdTimeoutDefault): string; overload;
从远程计算机读取数据

procedure Send(AHost: string; const APort: Integer; const AData: string);
向远程计算机发送数据

procedure SendBuffer(AHost: string; const APort: Integer; var ABuffer; const AByteCount:

integer);
向远程计算机发送数据

事件
property OnStatus: TIdStatusEvent;
当前连接状态事件。
参数
aaArgs
被用来构造当前状态文本信息的格式化参数。
axStatus
当前连接状态。是以下状态之一:
        hsResolving - 主机名称被解析成IP地址
 hsConnecting - 一个连接正在被打开
 hsConnected -  一个连接已经被打开
 hsDisconnecting - 一个连接正在关闭
 hsDisconnected - 一个连接已经被关闭
 hsText - 该连接正在产生含信息的消息
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值