服务端
IPAddress[] addrlist = Dns.GetHostAddresses(mURL);//解析域名得到IP地址
IPAddress v4ip = null;
foreach (IPAddress ip in addrlist)
{
if (ip.AddressFamily == AddressFamily.InterNetwork)
{
v4ip = ip;
break;
}
}
TcpListener tcpListener = new TcpListener(v4ip, mPORT);
tcpListener.Start();
while (true)
{
Socket socket = tcpListener.AcceptSocket();
//如果是多线程的应用,需要在一个异步过程中使用这个socket与客户端通信,以便接收下一个连接请求。
}
客户端
Socket mSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
mSocket.Connect(mURL, mPort);
string msg = "hello";
mSocket.Send(Encoding.UTF8.GetBytes(msg.ToString()));
接收
byte[] buff=new byte[1024];
int count=mSocket.Receive(buff);
string receiveStr = Encoding.UTF8.GetString(buff, 0, count);