看例子.
使用tcplistener和tcpclient来建立服务程序.
public static void Main()
{    
 
  try
  {
    // Set the TcpListener on port 13000.
    Int32 port = 13000;
    IPAddress localAddr = IPAddress.Parse("127.0.0.1");
    
    // TcpListener server = new TcpListener(port);
    TcpListener server = new TcpListener(localAddr, port);    // Start listening for client requests.
    server.Start();
       
    // Buffer for reading data
    Byte[] bytes = new Byte[256];
    String data = null;    // Enter the listening loop.
    while(true) 
    {
      Console.Write("Waiting for a connection... ");
      
      // Perform a blocking call to accept requests.
      // You could also user server.AcceptSocket() here.
      TcpClient client = server.AcceptTcpClient();            
      Console.WriteLine("Connected!");      data = null;      // Get a stream object for reading and writing
      NetworkStream stream = client.GetStream();      Int32 i;      // Loop to receive all the data sent by the client.
      while((i = stream.Read(bytes, 0, bytes.Length))!=0) 
      {   
        // Translate data bytes to a ASCII string.
        data = System.Text.Encoding.ASCII.GetString(bytes, 0, i);
        Console.WriteLine(String.Format("Received: {0}", data));
     
        // Process the data sent by the client.
        data = data.ToUpper();        Byte[] msg = System.Text.Encoding.ASCII.GetBytes(data);        // Send back a response.
        stream.Write(msg, 0, msg.Length);
        Console.WriteLine(String.Format("Sent: {0}", data));            
      }
       
      // Shutdown and end connection
      client.Close();
    }
  }
  catch(SocketException e)
  {
    Console.WriteLine("SocketException: {0}", e);
  }
    
  Console.WriteLine("\nHit enter to continue...");
  Console.Read();
}[C++] 
void main() {    
    try {
        // Set the TcpListener on port 13000.
        Int32 port = 13000;
        IPAddress* localAddr = IPAddress::Parse(S"127.0.0.1");        // TcpListener* server = new TcpListener(port);
        TcpListener* server = new TcpListener(localAddr, port);        // Start listening for client requests.
        server->Start();        // Buffer for reading data
        Byte bytes[] = new Byte[256];
        String* data = 0;        // Enter the listening loop.
        while (true) {
            Console::Write(S"Waiting for a connection... ");            // Perform a blocking call to accept requests.
            // You could also user server.AcceptSocket() here.
            TcpClient* client = server->AcceptTcpClient();            
            Console::WriteLine(S"Connected!");            data = 0;            // Get a stream Object* for reading and writing
            NetworkStream* stream = client->GetStream();            Int32 i;            // Loop to receive all the data sent by the client.
            while (i = stream->Read(bytes, 0, bytes->Length)) {   
                // Translate data bytes to a ASCII String*.
                data = Text::Encoding::ASCII->GetString(bytes, 0, i);
                Console::WriteLine(String::Format(S"Received: {0}", data));                // Process the data sent by the client.
                data = data->ToUpper();                Byte msg[] = Text::Encoding::ASCII->GetBytes(data);                // Send back a response.
                stream->Write(msg, 0, msg->Length);
                Console::WriteLine(String::Format(S"Sent: {0}", data));            
            }            // Shutdown and end connection
            client->Close();
        }
    } catch (SocketException* e) {
        Console::WriteLine(S"SocketException: {0}", e);
    }    Console::WriteLine(S"\nHit enter to continue...");
    Console::Read();
}