static void Main() {
int port = 2000; string host = "127.0.0.1";
IPEndPoint ipe = new IPEndPoint(IPAddress.Parse(host), port);
Socket s = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
s.Bind(ipe); s.Listen(0);
Console.WriteLine("Wait for connect");
Socket client = s.Accept(); // 阻塞等待連線
Console.WriteLine("Get a connect");
byte[] buffer = new byte[1024];
int len = client.Receive(buffer);
string recv = Encoding.ASCII.GetString(buffer, 0, len);
Console.WriteLine("Server Get Message: " + recv);
string reply = "Ok! Client Send Message Successful!";
client.Send(Encoding.ASCII.GetBytes(reply));
client.Close(); s.Close();
}
System.Net.Sockets 提供三個抽象層級更高的類別:
NetworkStreamSend/Receive,無 GetStream下一篇將示範 TcpClient/TcpListener 實作聊天室。