10053错误,如何解决?急..........

bdove 2006-12-01 06:48:39
int CIoSelectSvr::Send(SOCKET sClient, unsigned long ulLen, char * pData)
{
if (sClient == INVALID_SOCKET || pData == NULL || ulLen == 0 || !m_bStart)
{
return NDK_PARAM_INVALID;
}

int bRet = CIoSocketBase::Send(sClient, pData, ulLen);

if( bRet == SOCKET_ERROR && GetLastError() != WSA_IO_PENDING)
{
WriteLog("WSASend With Error : %d", GetLastError());

return NDK_SOCKET_ERROR;
}

return NDK_SUCC;
}

这是服务器的发送函数。当向客户端发送数据时,竟然出错:10053。
WSAECONNABORTED (10053)

Software caused connection abort.
An established connection was aborted by the software in your host machine, possibly due to a data transmission timeout or protocol error.

如何解决这种现象???
是否在发现这种情况时,服务器断掉客户端,让客户端重建连接就好?
...全文
2031 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
high2003376320 2006-12-02
  • 打赏
  • 举报
回复
如何解决这种现象???
是否在发现这种情况时,服务器断掉客户端,让客户端重建连接就好?
重启后,就好了!

是不是忘了关闭套接字了????
干脆给源码算了,帮你调试一下
bdove 2006-12-02
  • 打赏
  • 举报
回复
谢谢顶!
LiChenYue 2006-12-02
  • 打赏
  • 举报
回复
不是太懂,帮你顶一下,蹭点分!
bdove 2006-12-02
  • 打赏
  • 举报
回复
晕倒,不是每次都出的,在客户那里验收时,才出过一次!不过发生这种错误时,没有强制断掉连接倒是真的!
如果发生这种情况,强制断掉与客户端的连接,让客户端重建的话,是否有用?
能解决这个问题?
bdove 2006-12-01
  • 打赏
  • 举报
回复
m_pRecvDataFunc = pRecvData;
m_sListen = CIoSocketBase::Create();
m_uiSvrPort = ulPort;
m_strHostAddr = pszIp;
m_lpParent = lpParent;
if (CIoSocketBase::Bind(m_sListen, ulPort, pszIp) != 0)
{
return NDK_INIT_BIND_FAILED;
}

if (!CIoSocketBase::Listen(m_sListen))
{
return NDK_INIT_LISTEN_FAILED;
}

我的不是每次出的。有时出,有时不出。重启后,就好了!
icebluenet 2006-12-01
  • 打赏
  • 举报
回复
你是怎么初始化sClient的?

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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