问题:总是提示我的 ref endPoint 参数为空。也就是我的程序中的refEP.
我用的协议是UDP,使用回调方法接收数据,消息是从我自己的机器发出来的。我的主要目的是提取对方IP。请指教:
用udpSocket.BeginReceiveFrom(msgReceive, 0, msgReceive.Length, SocketFlags.None, ref refEP, new AsyncCallback(ReceiveCallBack), udpSocket)异步接收,回调函数是:
private void ReceiveCallBack(IAsyncResult ar)
{try {
int rend = reSocket.EndReceiveFrom(ar, ref refEP);
this.tb_Msg.AppendText(refEP.ToString() + System.Text.Encoding.Default.GetString(msgReceive, 0, rend) + refEP.AddressFamily.toStrint() + "\n");
udpSocket.BeginReceiveFrom(msgReceive, 0, msgReceive.Length, SocketFlags.None, ref refEP, new AsyncCallback(ReceiveCallBack), udpSocket);
}catch (ArgumentNullException ane)
{MessageBox.Show(ane.Message);}
}