请教TClientSocket使用问题 (急)(100分)

  • 主题发起人 主题发起人 jhonguy
  • 开始时间 开始时间
J

jhonguy

Unregistered / Unconfirmed
GUEST, unregistred user!
如果服务器端没有开,会触发异常,我要怎么捕获这个异常?使它给用户
提示,而不是由系统的提示框
我这么写可是不行,不知道该怎么写,问题在哪里?
try
cs1.Active:=true;
except
on E: ESocketError do
begin
ShowMessage(E.Message);
cs1.Active:=false;
end;
end;
 
不能这么写,你必须在TClientSOCKET的错误处理事件里ONerror,通过判断哪个错误事件
的类型来判断是否是服务器没开,还有,这是你的TCLIENTSOCKET设置在异步模式写的判断
方法
 
ft,解决了!在cleintsocket的onerror中,给errorcode:=0;
Set the ErrorCode parameter to 0 if the OnError event
handler successfully deals with the error condition,
to prevent an ESocketError from being raised.
居然没想到,对这种错误处理非常不熟悉,不知道哪里有比较系统详细的
说明,大家推荐一下,3thx
 
你这种处理不太好,你必须判断是不是在连接的时候出错,而且出错以后,你必须关掉这个
套接字,否则资源泄露,
WINSOCK错误代码我熟的很,呵呵,
 
当然最好的说明就是delphi自己带的帮助。
我平时遇到不明白的问题,一般是先看帮助,如果帮助里没有,再到这里提问。
delphi的帮助都是英文的,内容很全面
 
能说具体点吗?或者给个代码示例,3thx
 
我只想着用try except 来捕获异常,就没有注意可以这么处理
平时都是用VC来写些东西,养成习惯了,哈哈
觉得delphi在数据结构上没有c或c++这么灵活.(或许时我对这部分不太熟悉,^_^)
 
DELPHI一样可以当VC用,呵呵[:D]
 
能不能说一说常用的异常处理?像在写数据库程序的时候老是需要处理
 
好了给分了!3thx
 
就是try finally except什么的,和VC一样
 
而且处理DELPHI的异常,最后是看DELPHI的VCL原吗,当然DELPHI的TRY也可以拦截了系统的
异常.
 
INSOCK错误代码在DELPHI- HELP- Windows SDK - Windows Socket2 Reference 中可具体查到
TClientSOCKET的错误处理事件有例子可参考。
 
张无忌的人品和技术真让小弟佩服!
 
如果要屏蔽错误,最好的办法是到vcl的代码那里封掉引起错误的那个语句
这是我的经验
 
后退
顶部