2017-12-23 15 views
-1

Ich möchte Daten zwischen zwei Computern im selben Netzwerk senden.TCP/IP Daten zwischen zwei Computern senden?

Kunde erhält auch einen Fehler: System.Net.Sockets.SocketException: ‚Die Verbindung reagierte nicht innerhalb einer angemessenen Frist, eine Verbindung hergestellt wurde und der Computer kann nicht hergestellt werden, weil der Computer nicht

ansprachen

Was ist los? Danke.

-Code in Server ausgeführt wird:

static void Main(string[] args) 
     { 
      TcpListener listen = new TcpListener(IPAddress.Any, 1200); 

      listen.Start(); 

      TcpClient client = listen.AcceptTcpClient(); 

      NetworkStream stream = client.GetStream(); 
      byte[] buffer = new byte[client.ReceiveBufferSize]; 

      int data = stream.Read(buffer, 0, client.ReceiveBufferSize); 
      string ch = Encoding.Unicode.GetString(buffer, 0, data); 
      Console.WriteLine("Message: " + ch); 
      client.Close(); 
      Console.ReadKey(); 

     } 

-Code läuft in Auftraggeber:

static void Main(string[] args) 
{ 
TcpClient client = new TcpClient("192.168.21.131", 1200); 
//IPV4(Server) = 192.168.21.131 
NetworkStream n = client.GetStream(); 
string ch = Console.ReadLine(); 

byte[] message = Encoding.Unicode.GetBytes(ch); 
n.Write(message, 0, message.Length); 
Console.WriteLine("----------------"); 
client.Close(); 

Console.ReadKey(); 
} 
+2

Haben Sie das Debuggen versucht? Was passiert auf dem Server? Und im Kunden? –

+0

Vergessen Sie nicht, die Firewall zu deaktivieren oder öffnen Sie den erforderlichen Port –

+1

Ich habe Code getestet und es funktioniert gut mit einem Computer. Stellen Sie sicher, dass Sie zuerst den Listener starten. Überprüfen Sie auch, ob die IP korrekt ist, indem Sie cmd.exe> ​​Netstat/all verwenden, um die Computer-IP-Adresse anzugeben. Sie können connectiion mit Ping testen: cmd.exe> ​​Ping IP (ersetzen durch Computer-IP-Adresse). – jdweng

Antwort

0

Dies ist kein Programmierfehler, das ist ein Netzwerkfehler.

Sie beide auf der gleichen Maschine laufen kann und die IP-Adresse ändern (192.168.21.131) oder localhost 127.0.0.1 (Sie sind weniger wahrscheinlich in Netzwerkprobleme laufen).

Laut Robberts Kommentar müssen Sie sicherstellen, dass die Ports auf beiden Computern korrekt auf der Firewall geöffnet sind.

Screenshot from server

+1

Loopback 127.0.0.1 wird nicht immer funktionieren. Schlechter Vorschlag. – jdweng

Verwandte Themen