学习delphi UDP通讯。 本人想学习delphi UDP通讯。所以想弄点能用的demo研究一下。 最好有现成的组件。或者很方便就能添加的。我是XP的系统delphi7 。有的直接发我邮箱 [email protected] 。非常感谢。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 DELPHI INDY目录有DEMOAPI的看MSDN就行了, MSDN都有例子,直接拿来就能跑。 我delphi7 demo indy 文件夹里没有例子。只有个txt文件。 要不大家随便指导点东西。我好学习。今天看下来。发现 indyudp client不能接收数据。 放两个控件TIdUDPServer,TIdUDPClientunit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, IdUDPClient, IdBaseComponent, IdComponent, IdUDPBase, IdUDPServer, StdCtrls,IdSocketHandle;type TForm1 = class(TForm) Button1: TButton; IdUDPServer1: TIdUDPServer; IdUDPClient1: TIdUDPClient; Memo1: TMemo; procedure FormCreate(Sender: TObject); procedure Button1Click(Sender: TObject); procedure IdUDPServer1UDPRead(Sender: TObject; AData: TStream; ABinding: TIdSocketHandle); private { Private declarations } public { Public declarations } end;var Form1: TForm1;implementation{$R *.dfm}procedure TForm1.FormCreate(Sender: TObject);beginself.IdUDPServer1.DefaultPort:=1984;self.IdUDPServer1.Active:= true;end;procedure TForm1.Button1Click(Sender: TObject);beginself.IdUDPClient1.Send('127.0.0.1',1984,'fdsafdsa');end;procedure TForm1.IdUDPServer1UDPRead(Sender: TObject; AData: TStream; ABinding: TIdSocketHandle);var sStream: TStringStream;begin sStream:= TStringStream.Create(''); try sStream.CopyFrom(AData,AData.Size); Memo1.Lines.Add(sStream.DataString); finally sStream.Free; end;end;end. IdUDPClient1.ReceiveBuffer(...) 可以接收数据 用windows自带的winsock控件就可以实现UDP的通讯 邮件正文的多行问题 BeforeNavigate2获取下一个URL DataModul 单元里找不到application对象 请问delphi有没有两个16进制相加的函数?或者十进制转成十六进制的函数? tag属性是干什么的? 如何编程实现数据库对象(表,存储过程等)的脚本描述? 急问serverSocket收到空包的问题 谁有办法将qreport预览窗体上的close改成中文 delphi中那个pooler例子中TPooler,TPoolManager的调用机制是怎样的? 两个问题,请帮忙看一下? 酱紫滴界面如何实现? advstringgrid 中 单元格的值怎么读取?
API的看MSDN就行了, MSDN都有例子,直接拿来就能跑。
TIdUDPServer,TIdUDPClient
unit Unit1;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, IdUDPClient, IdBaseComponent, IdComponent, IdUDPBase,
IdUDPServer, StdCtrls,IdSocketHandle;type
TForm1 = class(TForm)
Button1: TButton;
IdUDPServer1: TIdUDPServer;
IdUDPClient1: TIdUDPClient;
Memo1: TMemo;
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure IdUDPServer1UDPRead(Sender: TObject; AData: TStream;
ABinding: TIdSocketHandle);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}procedure TForm1.FormCreate(Sender: TObject);
begin
self.IdUDPServer1.DefaultPort:=1984;
self.IdUDPServer1.Active:= true;
end;procedure TForm1.Button1Click(Sender: TObject);
begin
self.IdUDPClient1.Send('127.0.0.1',1984,'fdsafdsa');
end;procedure TForm1.IdUDPServer1UDPRead(Sender: TObject; AData: TStream;
ABinding: TIdSocketHandle);
var
sStream: TStringStream;
begin
sStream:= TStringStream.Create('');
try
sStream.CopyFrom(AData,AData.Size);
Memo1.Lines.Add(sStream.DataString);
finally
sStream.Free;
end;
end;end.