send 与 10053 的问题
//代理邮件信息
CString sLastData = "";
///////////////////////////////////测试用的数据,如果这里改i<11,则一切正常,如果改为i<12则在下面发送的时候就出现了10053错误信息
while(i<12)
{
sLastData += "Hello,World~\r\n" + sLastData;
i++;
}
DWORD nLen = sLastData.GetLength();
int left = nLen;
//////////////////////////////////////
while(left > 0)
{
int nSendRes = send(psvc->sockTcpToServer, sLastData.GetBuffer(0) + (nLen - left), left, 0);//不管数据量多大,这里都是直接返回,
//且没有出现过错误现象
if (SOCKET_ERROR == nSendRes) //如果发送包头错误
{
DWORD nErr = GetLastError();
break;
}
left -= nSendRes;
}
int nCount = send(psvc->sockTcpToServer,"\r\n.\r\n",strlen("\r\n.\r\n"),0);//错误出现在这边
if(nCount == SOCKET_ERROR)
{
DWORD nErr = GetLastError();
SetEvent(psvc->hSocks5Event);
break;
}
//需要说明:这段代码是在写邮件代理服务器的片段,SOCKET是连到163邮件服务器上的,望高手指点指点~真是郁闷~