Socket.BeginSend的第一个参数应该怎样定义才能和服务器上用c++写的接口包对上
接口包:class msgToSend
{
int len=211;
string msg="nihao";
public byte[] ToByte()
{
List<byte> result=new List<byte>();
result.AddRange(BitConverter.GetBytes(len));
result.AddRange(Encoding.UTF8.GetBytes(msg));
return result.ToArray();
}
}
发送:
byte[] b = msgToSend.ToByte();
clientSocket.BeginSend(b, 0, b.Length, SocketFlags.None, new AsyncCallback(OnSend), msgToSend);
对方接收方法:
nRecvLen = ntohl(Pktbuf.len) ;/取得包的长度
if ( nRet = CSocketBase::enRecv( m_hSocket, &Pktbuf, nRecvLen, g_nTimeOut ) !=
nRecvLen )
结果对方说接收的包的长度太大,无法接收数据!!请求高人指点
补充:.NET技术 , C#