XClient_UDPSelect_RecvPkt
接受一个完整包
BOOL XClient_UDPSelect_RecvPkt(SOCKET hSocket, CHAR** pptszMsgBuffer, int* pInt_Len, XENGINE_PROTOCOLHDR* pSt_ProtocolHdr, int nTimeout = 2, CHAR* ptszAddr = NULL, int nIPVer = 2)
参数.一:hSocket
In/Out:In
类型:句柄
可空:N
意思:输入要操作的客户端句柄
参数.二:pptszMsgBuffer
In/Out:Out
类型:字符指针的指针
可空:N
意思:输出获取到的协议头后的缓冲区,这个内存需要手动释放
参数.三:pInt_Len
In/Out:Out
类型:整数型指针
可空:N
意思:输出后续缓冲区大小
参数.四:pSt_ProtocolHdr
In/Out:Out
类型:数据结构指针
可空:Y
意思:输出协议头
参数.五:nTimeout
In/Out:In
类型:整数型
可空:Y
意思:输入获取包超时时间,单位秒
参数.六:ptszAddr
In/Out:Out
类型:字符指针
可空:N
意思:输出对方地址
参数.七:nIPVer
In/Out:In
类型:整数型
可空:Y
意思:要使用的IP版本,V4或者V6
类型:逻辑型
意思:是否成功
这个函数无法处理多个包在一个缓冲区,也无法处理分片包头
这个函数只能针对XEngine标准头