Hola, me gustaria que me hecharan una mano en esto, llevo 3 dias tratando con esto de los socket en c# lamentablemente google no me ha brindado mucha informacion.
Empece este emulador hace algunos dias, lo que quiero hacer es que múltiples clientes se conecten al servidor, encontré como hacerlo buscando y buscando por google.
Con este codigo, el servidor escucha al cliente, ya lo probé y el cliente que esta hecho en adobe flash, al ingresar los datos del login queda esperando a recibir una respuesta y si cierro el emulador, en el cliente aparece "Conexion interrumpida con el servidor" ¿Quieres volver a intentar conectarte al juego?.
Con un Sniffer o husmeador de trafico de red, Analice los paquetes que se envian, y son dos paquetes : "[Af][DatosDeLaCuenta]" y [Ax][NoRecuerdoDeQueEraXD] pero el que importa es el AF.
Lo que quiero lograr es que el emulador analice si se recibe el paquete AF y envie el paquete [AlEc][DarAccesoALaCuentaIngresada] y lograr pasar de la pantalla login.
Aqui les dejo el codigo que escucha al cliente, me falta el para analizar y me gustaria que me enseñaran como hacer lo que les pido, Muchas Gracias. Cualquier cosa comenten por favor.
Empece este emulador hace algunos dias, lo que quiero hacer es que múltiples clientes se conecten al servidor, encontré como hacerlo buscando y buscando por google.
Con este codigo, el servidor escucha al cliente, ya lo probé y el cliente que esta hecho en adobe flash, al ingresar los datos del login queda esperando a recibir una respuesta y si cierro el emulador, en el cliente aparece "Conexion interrumpida con el servidor" ¿Quieres volver a intentar conectarte al juego?.
Con un Sniffer o husmeador de trafico de red, Analice los paquetes que se envian, y son dos paquetes : "[Af][DatosDeLaCuenta]" y [Ax][NoRecuerdoDeQueEraXD] pero el que importa es el AF.
Lo que quiero lograr es que el emulador analice si se recibe el paquete AF y envie el paquete [AlEc][DarAccesoALaCuentaIngresada] y lograr pasar de la pantalla login.
Aqui les dejo el codigo que escucha al cliente, me falta el para analizar y me gustaria que me enseñaran como hacer lo que les pido, Muchas Gracias. Cualquier cosa comenten por favor.
Código (csharp) [Seleccionar]
public class GestorEntrada
{
//En estas variables esta almacenado los datos del servidor que pregunta a un archivo de texto cual es la ip y el puerto de entrada
public static string IP = Ajustes.IP_SERVIDOR;
public static int Puerto = Ajustes.RealmPort;
public static IPAddress ipAddress = Dns.GetHostEntry(IP).AddressList[0];
public static IPEndPoint localEndPoint = new IPEndPoint(ipAddress, Puerto);
public static Socket listener = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
public static void EscucharCliente()
{
// Crear un TCP/IP socket.
// Enlazando el socket a el punto de encuentro y escuchar las conexiones entrantes
listener.Bind(localEndPoint);
listener.Listen(100);
ColorConsola.Info("Esperando conexiones entrantes...");
}
}