UDP server laver underlige fejl når en bruger går ned..
Hey..jeg har lavet et spil hvor serveren er lavet i C#.
Jeg anvender en udp connection, og opsætter den på denne måde:
so2 = new StateObject();
so2.workSocket = m_socListener;
m_Sender = (this.ipLocal);
m_Sendertmp = (this.ipLocal);
m_socListener.BeginReceiveFrom(RecieveBuffer, 0, RecieveBuffer.Length, SocketFlags.None, ref m_Sender, new AsyncCallback(OnDataReceived),so2);
Her sætter jeg et asyn event op, som kalder OnDataReceived.
Denne event bliver også kaldt når en bruges spil går ned, i OnDataRecieved køre jeg disse kommandoer:
int iRx = m_socListener.EndReceiveFrom(asyn,ref m_Sender);
m_socListener.BeginReceiveFrom(RecieveBuffer, 0, RecieveBuffer.Length, SocketFlags.None, ref m_Sender, new AsyncCallback(OnDataReceived),so2);
når jeg så senere i funktionen prøver at køre denne:
m_socListener.BeginReceiveFrom(RecieveBuffer, 0, RecieveBuffer.Length, SocketFlags.None, ref m_Sender, new AsyncCallback(OnDataReceived),so2);
får jeg denne fejl:
An unhandled exception of type 'System.Net.Sockets.SocketException' occurred in system.dll
Additional information: An existing connection was forcibly closed by the remote host
problemet er bare at hvis jeg ikke køre Begin.. igen så tager serveren ikke imod nogle pakker..
What do I do ? :)
