Estoy tratando de conectarme a un sensor usando la red, la ip del sensor es 192.168.2.44 en el puerto 3000;
Mi código:
byte[] byteReadStream = null; // holds the data in byte buffer IPEndPoint ipe = new IPEndPoint(IPAddress.Parse("192.168.2.44"), 3000);//listen on all local addresses and 8888 port TcpListener tcpl = new TcpListener(ipe); while (true) { //infinite loop tcpl.Start(); // block application until data and connection TcpClient tcpc = tcpl.AcceptTcpClient(); byteReadStream = new byte[tcpc.Available]; //allocate space tcpc.GetStream().Read(byteReadStream, 0, tcpc.Available); Console.WriteLine(Encoding.Default.GetString(byteReadStream) + "\n"); } 
Pero cuando ejecuto este código, aparece este error:
La dirección solicitada no es válida en su contexto
Use IPAddress.Any para escuchar. Este parece ser tu objetivo:
//listen on all local addressesLa dirección de escucha que ha especificado no es válida por alguna razón. No es necesario especificar una dirección numérica.
El TcpListener escucha las conexiones del cliente de red TCP, en un puerto dado en su máquina local . Es decir, para conexiones entrantes . Su código actuará como una especie de "servidor".
La dirección solicitada no es válida en su contexto
Simplemente, significa que la dirección IP proporcionada no es utilizada por ninguna interfaz de red en su máquina.
Utilice IPAddress.Any para escuchar en cualquier dirección IP (es decir, interfaz de red).
Sin embargo, puede darse el caso de que necesite conectarse al sensor (en el puerto 3000), y no al revés.
EDITAR: la nueva excepción solo le dice que tiene dos aplicaciones que intentan escuchar la misma combinación de interfaz/puerto. ¿Tienes dos instancias ejecutándose al mismo tiempo?
Una de las razones de este problema podría ser la presencia de la sección proxy predeterminada en el archivo de configuración que enrutaría todas las llamadas salientes a través de la dirección proxy mencionada en esta configuración. Asegúrese de que haya un servidor/servicio proxy escuchando en la dirección del proxy, o comente esta sección para detener el enrutamiento. En caso de que el archivo de configuración de la aplicación no lo tenga y este error aún esté ahí, verifique la sección defaultProxy en el archivo machine.config . machine.config debería estar disponible en la carpeta C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config . En nuestro caso, fue el proxy predeterminado en machine.config .