为什么我的SOCKET接收正常 无法发送呢 求解啊
UINTMyThreeadProc(LPVOIDlParam){Cconnect_sDlg*pDlg=(Cconnect_sDlg*)lParam;sockConn=ac...
UINT MyThreeadProc(LPVOID lParam)
{
Cconnect_sDlg *pDlg = (Cconnect_sDlg*) lParam;
sockConn = accept( sockSrv ,(SOCKADDR*)&addrClient , &len );
char sendBuf[50];
char revbuffer[50];
sprintf_s(sendBuf,"Welcome %s to here!",inet_ntoa(addrClient.sin_addr));//组合消息发送出去
send(sockConn,sendBuf,strlen(sendBuf)+1,0);//发送消息到客户端
Sleep(10);
while(1)
{
//发送
if ( flag_user_message == 1 )
{
CString2Char(str_temp_send_message,sendBuf);
send(sockConn,sendBuf,strlen(sendBuf)+1,0);//发送消息到客户端
Sleep(10);
flag_user_message = 0 ;
}
//接收
Sleep(3);
memset(revbuffer,0,sizeof(revbuffer));
recv(sockConn,revbuffer,1024,0);
if (revbuffer[0] != 0 )
{
temp_str_recvbuffer = revbuffer;
temp_str_recvbuffer += "\r\n";
pDlg->m_talkwin += temp_str_recvbuffer;
PostMessage(pDlg->m_hWnd, updateUI , 0 , 0 );
}
}
closesocket(sockConn);
return 0;
}
为什么接收正常 而发送却错误呢 b的返回代码 为 10038 这个是为什么呢? 展开
{
Cconnect_sDlg *pDlg = (Cconnect_sDlg*) lParam;
sockConn = accept( sockSrv ,(SOCKADDR*)&addrClient , &len );
char sendBuf[50];
char revbuffer[50];
sprintf_s(sendBuf,"Welcome %s to here!",inet_ntoa(addrClient.sin_addr));//组合消息发送出去
send(sockConn,sendBuf,strlen(sendBuf)+1,0);//发送消息到客户端
Sleep(10);
while(1)
{
//发送
if ( flag_user_message == 1 )
{
CString2Char(str_temp_send_message,sendBuf);
send(sockConn,sendBuf,strlen(sendBuf)+1,0);//发送消息到客户端
Sleep(10);
flag_user_message = 0 ;
}
//接收
Sleep(3);
memset(revbuffer,0,sizeof(revbuffer));
recv(sockConn,revbuffer,1024,0);
if (revbuffer[0] != 0 )
{
temp_str_recvbuffer = revbuffer;
temp_str_recvbuffer += "\r\n";
pDlg->m_talkwin += temp_str_recvbuffer;
PostMessage(pDlg->m_hWnd, updateUI , 0 , 0 );
}
}
closesocket(sockConn);
return 0;
}
为什么接收正常 而发送却错误呢 b的返回代码 为 10038 这个是为什么呢? 展开
1个回答
深圳市容大彩晶科技有限公司
2024-11-20 广告
2024-11-20 广告
广告机代理优选容大彩晶,深圳市容大彩晶科技有限公司自2007年成立伊始,一直专注于液晶商用显示产品的技术研发及产品服务。公司依托具有自主研发能力、创新高效的技术团队,打造出行业优质商用液晶显示设备。容大彩晶产品涵盖商用液晶显示、多媒体广告机...
点击进入详情页
本回答由深圳市容大彩晶科技有限公司提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询