public void aceptar_conexion() { try { IPlocal = IPAddress.Parse(parametrosconfig.ip); servidor = new TcpListener(IPlocal, parametrosconfig.puerto); servidor.Start(); opc = true; /*Monitorea el estado de la conexion*/ hiloMonitor = new Thread((ThreadStart)verificarEstadoConexion); hiloMonitor.Start(); /*Ingresa a un lazo repetitivo para validar esperar varias conexiones*/ while (opc) { cliente = servidor.AcceptTcpClient(); mensaje_error_sistema("Conexion ip " + cliente.Client.RemoteEndPoint.ToString().Split(':')[0] + " remota", Color.Blue); AtmObj atmIng = verificarIpAutorizada(cliente.Client.RemoteEndPoint.ToString().Split(':')[0]); if (atmIng != null) { //conBdd.abrir_conexion_base(); atmIng.conexion = true; conBdd.actualizar_terminal(atmIng); //conBdd.cerrar_conexion_base(); mensaje_error_sistema("Ip " + cliente.Client.RemoteEndPoint.ToString().Split(':')[0] + " remota - aceptada ", Color.Green); ConexionTCP clien = new ConexionTCP(cliente, parametrosconfig, this.visor, atmIng, conBdd); clien.datoIn += new datoIngresoServicio(obtener_tramaIn); clien.datoResp += new datoIngresoServicio(obtener_tramaRespuesta); terminalesConectadas.Add(clien); if (opc) { try { hiloServidor = new Thread((ThreadStart)clien.cliente_servicio); hiloServidor.Start(); } catch (Exception excli) { mensaje_error_sistema(excli.Message, Color.Red); } } } else { cliente.Close(); mensaje_error_sistema("No autorizada para conectarse ...", Color.Red); } } } catch (SocketException ex) { mensaje_error_sistema(" " + ex.Message, Color.Red); } finally { servidor.Stop(); } }
public void aceptar_conexion() { try { IPlocal = IPAddress.Parse(parametrosconfig.ip); servidor = new TcpListener(IPlocal, parametrosconfig.puerto); servidor.Start(); opc = true; /*Monitorea el estado de la conexion*/ hiloMonitor = new Thread((ThreadStart)verificarEstadoConexion); hiloMonitor.Start(); /*Ingresa a un lazo repetitivo para validar esperar varias conexiones*/ while (opc) { cliente = servidor.AcceptTcpClient(); mensaje_error_sistema("Conexion ip "+cliente.Client.RemoteEndPoint.ToString().Split(':')[0] +" remota",Color.Blue); AtmObj atmIng = verificarIpAutorizada(cliente.Client.RemoteEndPoint.ToString().Split(':')[0]); if (atmIng != null) { //conBdd.abrir_conexion_base(); atmIng.conexion = true; conBdd.actualizar_terminal(atmIng); //conBdd.cerrar_conexion_base(); mensaje_error_sistema("Ip " + cliente.Client.RemoteEndPoint.ToString().Split(':')[0] + " remota - aceptada ", Color.Green); ConexionTCP clien = new ConexionTCP(cliente, parametrosconfig, this.visor,atmIng,conBdd); clien.datoIn += new datoIngresoServicio(obtener_tramaIn); clien.datoResp += new datoIngresoServicio(obtener_tramaRespuesta); terminalesConectadas.Add(clien); if (opc) { try { hiloServidor = new Thread((ThreadStart)clien.cliente_servicio); hiloServidor.Start(); } catch (Exception excli) { mensaje_error_sistema(excli.Message, Color.Red); } } } else { cliente.Close(); mensaje_error_sistema("No autorizada para conectarse ...", Color.Red); } } } catch (SocketException ex) { mensaje_error_sistema(" "+ex.Message, Color.Red); } finally { servidor.Stop(); } }