TcpClient 的RemoteEndPoint与LocalEndPoint反过来啦。

jianshao810 2012-05-14 04:12:08

public void AcceptThread()
{
while (true)
{
try
{
TcpClient client = Listener.AcceptTcpClient();
DCTUsers[client.Client.RemoteEndPoint.ToString()] = client;

if (lbUsers.InvokeRequired)
{
lbUsers.Invoke(new Action(() =>
{
lbUsers.Items.Clear();
foreach (var dc in DCTUsers)
{
lbUsers.Items.Add(dc.Key);
}
}));
}

WriteReveice(string.Format("【服务端】收到请求 {0}", client.Client.LocalEndPoint.ToString()));
Thread manageThd = new Thread(ManageThread);
manageThd.Start(client);
}
catch (Exception e)
{
WriteReveice(e.Message);
}
}
}

public void ManageThread(object _client)
{
try
{
TcpClient client = _client as TcpClient;
if (client != null && client.Connected)
{
while (true)
{
NetworkStream ns = client.GetStream();
BinaryReader sr = new BinaryReader(ns);
string msg =string.Format("【{0}】:{1}",client.Client.RemoteEndPoint.ToString(),sr.ReadString()) ;
WriteReveice(msg);
}
}
}
catch (Exception e)
{ }
}

环境:
服务器端:127.0.0.1:8899
客户端:127.0.0.1:6666
我的问题是:在ManageThread这个方法的 client.Client.RemoteEndPoint 为什么得到的是 127.0.0.1:6666,而不是127.0.0.1:8899
...全文
462 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

17,740

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 .NET Framework
社区管理员
  • .NET Framework社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧