Indy的IdUDPServer的Bindings如何自己手动释放

lbg 2005-05-24 02:28:18
我是根据ini文件来绑定IP的,代码如下
//根据ini文件的Bindings内容来绑定IP和端口
//inifile:
//[Bindings]
//ip= port
//udps是TIdUDPServer
TStrings *ips=new TStringList();
TIniFile* pif = new TIniFile(ExtractFilePath(Application->ExeName )+"option.ini");
pif->ReadSection("Bindings",ips);;
udps->DefaultPort=0;
for(int i=0;i<ips->Count;++i)
{
TIdSocketHandle *had=new TIdSocketHandle(udps->Bindings);
had->IP=ips->Strings[i] ;
had->Port=pif->ReadInteger("Bindings",ips->Strings[i],7515);
if(had->IP!="") udps->Bindings->Add();
}
delete pif;
delete ips;
udps->Active =true;


释放的时候是这样的:
for(int i=0;i<udps->Bindings->Count;++i)
{
if(udps->Bindings->Items[i]->IP!="")
{
udps->Bindings->Items[i]->CloseSocket(true);
}

}

udps->Bindings->Clear() ;
udps->Active =false;

这样释放有问题,请高手提示
...全文
352 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
lbg 2005-06-08
  • 打赏
  • 举报
回复
不好意思,myy,这几天忙了,我试了你的代码,是循环加了的,但是,没有绑定
是不是indy的问题?我在http://blog.codelphi.com/kingecg/archive/2004/04/30/7050.aspx
里面有人说,IdUDP不能动态绑定???????
myy 2005-05-30
  • 打赏
  • 举报
回复
我只是象征性的写,你用循环加了吗?
lbg 2005-05-28
  • 打赏
  • 举报
回复
myy你上面的代码好像也不能绑定啊,用了你的代码,用netstat-na,只看到UPD 0.0.0.0 有个7515的端口,127.0.0.1没有,我的网卡IP也没有.
myy 2005-05-26
  • 打赏
  • 举报
回复
老大,应该这样:
...
udps->Bindings->Clear();
TIdSocketHandle *had=udps->Bindings->Add();
had->IP = ips->Strings[i] ;
had->Port = pif->ReadInteger("Bindings",ips->Strings[i],7515);
...


....
//后面也不用手工去释放每个TIdSocketHandle
lbg 2005-05-26
  • 打赏
  • 举报
回复
我上面的代码好像没有成功绑定IP和端口
lbg 2005-05-26
  • 打赏
  • 举报
回复
怎么没有人帮帮我啊
lbg 2005-05-25
  • 打赏
  • 举报
回复
但是我如果不释放,form关闭的时候就出错
lbg 2005-05-25
  • 打赏
  • 举报
回复
我在设计时候Binding多个地址是没有问题的,如果是动态绑定IP,FORM关闭的时候就出问题,怎么办啊?
constantine 2005-05-25
  • 打赏
  • 举报
回复
我没有自己释放过,闪人
myy 2005-05-24
  • 打赏
  • 举报
回复
Bindings是不需要自己手动释放的,看看帮助就知道了,
它继承自VCL 的 TOwnedCollection,你只管Add,Delete...Bindings的项没关系,
最后也会自动随IdUDPServer释放而释放每个项。
lbg 2005-05-24
  • 打赏
  • 举报
回复
http://blog.codelphi.com/kingecg/archive/2004/04/30/7050.aspx
里面有人说,IdUDP不能动态绑定???????
lbg 2005-05-24
  • 打赏
  • 举报
回复
帮帮忙啊

1,317

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder 网络及通讯开发
社区管理员
  • 网络及通讯开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧