Bonjour !
J'ai décidé de me remettre dans le jus, je n'ai pour l'instant que le couple Reader & Writer, les bases de mes packets alors je commence la réception et.. Surprise ! Je ne reçois absolument rien et pourtant la connexion au serveur d'authentification est réussie, le thread de réception lancé et aucunes exceptions levées. J'ai essayé avec plusieurs points d'arrêts de comprendre le problème mais je ne vois pas. Voici le code de ma classe initialisant la connexion :
Si vous avez des idées, je suis preneur !
J'ai décidé de me remettre dans le jus, je n'ai pour l'instant que le couple Reader & Writer, les bases de mes packets alors je commence la réception et.. Surprise ! Je ne reçois absolument rien et pourtant la connexion au serveur d'authentification est réussie, le thread de réception lancé et aucunes exceptions levées. J'ai essayé avec plusieurs points d'arrêts de comprendre le problème mais je ne vois pas. Voici le code de ma classe initialisant la connexion :
Code:
public class Login : IDisposable
{
#region Privates
private Thread _ReceptionThread;
Socket ListenServerSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
private byte[] _buffer;
#endregion
#region Publics
public delegate void SocketEventHandler(object sender, EventArgs e);
public event SocketEventHandler OnEventCatched;
public event SocketEventHandler OnDataReceived;
#endregion
public Login()
{
try
{
ListenServerSocket.Connect("213.248.126.39", 5555);
}
catch (SocketException e) {
Console.WriteLine("[SocketException]" + e.Message);
OnEventCatched(this, new EventArgs());
}
}
public void Start()
{
if (ListenServerSocket.Connected)
{
Console.WriteLine("Connexion au serveur d'authentification réussi.\r\nLancement du thread de réception.\r\n");
_ReceptionThread = new Thread(new ThreadStart(Receive));
_ReceptionThread.Start();
}
else
{
Console.WriteLine("La connexion avec le serveur d'authentification (213.248.126.39, 5555) a échouée.");
}
}
public void Receive()
{
while (ListenServerSocket.Connected)
{
_buffer = new byte[ListenServerSocket.Available];
if (_buffer.Length != 0)
{
ListenServerSocket.Receive(_buffer);
OnDataReceived(this, new EventArgs());
ParseData(_buffer);
}
}
}
[...]