客户端用WSASEND发送,用recv读数据没有问题,但用WSARecv时候,wsagetlasterror()回返回值为10045的错误
解决方案 »
- 关于在MFC的环境下利用DIRECTX绘制文本问题的讨论
- OpenGL的小问题
- 关于DC,顶有分
- 请问如何获得别的机器的子网掩码
- 确定记录集是否存在???(在线)
- 用Atl做最简单的com,添加一个属性Name后,get_Name和put_Name中应该怎么写?怎么调用时Name赋值后,仍然为NULL?
- VC++ 6安装故障!!!
- 哪个学校的操作系统最好?
- 有JAVASCRIPT 操作 WORD表格的例子嘛,谢谢
- CComboBox CBN_EDITUPDATE的问题,大家帮帮忙
- 如何在基于对话框的应用程序中加入状态栏
- 用MoveTo和LineTo画线时,设置画笔的宽度,单位问题,线的粗细与坐标映射有何关系!
发送端: LPWSABUF data=new WSABUF ;
data->buf="消息";
data->len=strlen(data->buf)*2;
DWORD len;
if (WSASend(Clienter,data,1,&len,0,NULL,NULL)!=0)
{ printf("send() failed: %d\n", WSAGetLastError());
break;
}
接收端: WSABUF redata;
DWORD relen;
if( WSARecv(accepter,&redata,1,&relen,NULL,NULL,NULL)== SOCKET_ERROR)
{
int a=WSAGetLastError();
return 0;
}
为什么用WSARecv会出现问题,而用Recv没有问题:
char buf1[1024]={0};
int i=recv(accepter,buf1,1024,0);