请教各位高手:网络编程异常处理的问题。[serversocket and clientsocket}

wagzt724 2005-03-07 10:50:59
bool __fastcall TForm1::IsNetLink()
{
bool flag = true;
try
{
ClientSocket1->Address="100.9.1.8";
ClientSocket1->Active = true;
}catch( Exception &exception )
{
flag = false;
}
return flag;
}
void __fastcall TForm1::Formcreate(TObject *Sender)
{
if( IsNetLink())
ShowMessage( "已经连接" );
}
以上是一个客户程序去连接服务器程序,现将服务器程序关掉。
我把serversocket程序设置成 Active=false;
按理说客户端的程序肯定会引发一个异常,这时我的程序就有机会 设置flag = false;
可是结果却正好相反,程序一启动就提示已经连接,然后弹出异常窗口,看来try catch没有
拦截住这个异常,为什么?请高手指点。
...全文
139 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
zyyoung 2005-04-27
  • 打赏
  • 举报
回复
二楼,没错...
daffodill77 2005-03-16
  • 打赏
  • 举报
回复
二楼回复的没错儿!我今天刚从一本书上看到这点儿!
佛火 2005-03-09
  • 打赏
  • 举报
回复
嗯,楼上正解
僵哥 2005-03-08
  • 打赏
  • 举报
回复
不是这样子写的,而是使用在OnError事件里面判断,然后将ErrorCode置0,这样子才不会抛出异常。
除非使用阻塞模式

1,317

社区成员

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

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