wizardqi(男巫),不好意思﹐关于TIdTCPServer还有些问题要请教你﹗简单问题﹐也望其它老大指教

storm999 2005-11-30 04:41:59
TIdTCPServer中异常如何处理? 另外﹐TIdTCPServer的Bindings属性如何设置? 我上次传文件的项目已经取消了﹐但我还是想把程序编完﹐学点东西
...全文
319 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
wizardqi 2005-12-01
  • 打赏
  • 举报
回复
TIdTCPServer的异常多出现在收发数据的过程中,比如以下简单的接收过程:
procedure TForm1.IdTCPServer1Execute(AThread: TIdPeerThread);
begin
with AThread.Connection do
begin
Memo1.Lines.Add(ReadLn);
end;
end;
当客户端意外中断时就会发生异常,原因是ReadLn函数一直在等待一串字符,而连接的突然中断导致异常,使用下面的语句模型会在发生异常的时候关闭服务器线程:
try
with AThread.Connection do
begin
Memo1.Lines.Add(ReadLn);
end;
except
on E:Exception do AThread.Stop;//<----关闭服务器线程
end;
storm999 2005-12-01
  • 打赏
  • 举报
回复
自己頂
storm999 2005-12-01
  • 打赏
  • 举报
回复
成了﹐多謝﹐多謝﹗開始設錯地方了
constantine 2005-12-01
  • 打赏
  • 举报
回复
Binding : TIdSocketHandle;
IdTCPServer1.Bindings.Clear;
Binding := IdTCPServer1.Bindings.Add;
Binding.Port := 5020;
Binding.IP := '0.0.0.0'; // ip

这样写
wizardqi 2005-12-01
  • 打赏
  • 举报
回复
with IdTCPServer1,Bindings do
begin
Clear;
with Add do
begin
//Ip:='127.0.0.1';
Port:=1981;
end;
Active:=True;
end;
storm999 2005-12-01
  • 打赏
  • 举报
回复
還有一個問題﹐TIdTCPServer的Bindings屬性怎么在程序里設置﹐而不是直接在IDE里設﹐我設了好几次﹐好像都不行﹐不知是什么原因?

1,593

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 网络通信/分布式开发
社区管理员
  • 网络通信/分布式开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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