10022错误,clientsocket如果在接收数据的时候不让他出现提示(25分)

  • 主题发起人 主题发起人 大虾米
  • 开始时间 开始时间

大虾米

Unregistered / Unconfirmed
GUEST, unregistred user!
10022错误,clientsocket如果在接收数据的时候不让他出现提示

只有这么多分了。
 
应该是在CLientSocket的OnError事件里面把ErrCode:=0;就可以了。当然你也可以根据ErrCode的值来决定时候显示错误。
 
应该是errorcode:=0;
上面的方法我早就用过了,不行,还是提示。
 
Windows socket error:提供了一个无效的参数。[10022], on API'WSACancelASyncRequest
 
很简单,就是 ErrorCode := 0;
系统的错误提示就不会出来,
下面就是实际使用中的代码:

procedure TMyclientForm.ClientSocketError(Sender: TObject;
Socket: TCustomWinSocket; ErrorEvent: TErrorEvent;
var ErrorCode: Integer);
begin
Memo2.Lines.Add('Error connecting to : ' + Server);
ErrorCode := 0;
end;
 
用了,我早说了,还是提示一个对话框:
Windows socket error:提供了一个无效的参数。[10022], on API'WSACancelASyncRequest'
 
如果errorcode=0都不好使,那么
估计是你的控件兼容或者程序设计上的BUG,
临时的办法:
不过你可以使用ApplicationEvent控件的OnExcept捕获的消息,并且处理它。否则你怎么处理这个异常,
永久的办法:
但是我建议你还是好好看看你的程序,10022错误,以前是控件兼容问题,比如你安装了不好的控件对TSOCKET控件弄坏了,或者SOCKET死循环等等。
 
谢谢了!
 
后退
顶部