CAsyncSocket::Receive的简介

 我来答
り斑驳丶8636垵
2016-06-03 · 超过68用户采纳过TA的回答
知道答主
回答量:180
采纳率:0%
帮助的人:151万
展开全部

函数功能描述:本函数用于从套接字获取数据
CAsyncSocket::Receive
virtual int Receive(void* lpBuf,int nBufLen, int nFlags = 0 );
返回值
调用成功时,返回接收到的字节数。如果连接被关闭了,返回0;否则返回SOCKET_ERROR,可以调用GetLastError得到特定的错误代码。此成员函数可用的错误代码有:
1 WSANOTINITIALISED 调用本API函数之前必须成功执行了AfxsocketInit函数。
2 WSAENETDOWN Windows Sockets检测到网络系统故障。
3 WSAENOTCONN 套接字没有连接上。
4 WSAEINPROGRESS 正在进行成块的Windows Sockets操作。
5 WSAENOTSOCK 描述符不是一个套接字
6 WSAEOPNOTSUPP 设置了MSG_OOB,但是套接字的类型不是SOCK_ STREAM。
7 WSAESHUTDOWN 套接字已经被关闭。调用ShutDown(参数nHow的值设为0或2)后,就不能在该套接字上调用Receive了。
8 WSAEWOULDBLOCK 套接字标志为非成块,而Receive操作将产生成块。
9 WSAEMSGSIZE 数据报太大,不能完全放到缓冲中,将被截断。
10 WSAEINVAL 套接字没有用Bind绑定。
11 WSAECONNABORTED 由于超时或其它故障使虚电路异常退出。
12 WSAECONNRESET 远端重置了虚电路。
输入数据的缓冲。
nBufLen
lpBuf的大小(字节数)。
nFlags
设置调用模式。本函数的语义由套接字选项和nFlags参数共同决定。nFlags由下面的任一个值组成,也可以用C++的OR操作符组合使用:
1 MSG_PEEK 把数据拷贝到缓冲,但不从输入队列上移走。
2 MSG_OOB 处理带外数据(请参阅联机文档“Win32 SDK”中的“Windows套接字编程注意事项)

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式