//Verifica se Aconteceu conecão private void ConnectCallback(IAsyncResult AR) { try { clientSocket.EndConnect(AR); // UpdateControlStates(true); buffer = new byte[clientSocket.ReceiveBufferSize]; Invoke((Action) delegate { ImageEnemy.Visible = true; }); //aqui cutuca o servidor e envia informaçoes byte[] Data = personagem.ToByteArray(); clientSocket.BeginSend(Data, 0, Data.Length, SocketFlags.None, SendCallback, null); clientSocket.BeginReceive(buffer, 0, buffer.Length, SocketFlags.None, ReceiveCallback, null); } catch (SocketException ex) { ShowErrorDialog(ex.Message); } catch (ObjectDisposedException ex) { ShowErrorDialog(ex.Message); } }
//Accept The User as loged private void AcceptCallback(IAsyncResult AR) { try { con = true; clientSocket = serverSocket.EndAccept(AR); buffer = new byte[clientSocket.ReceiveBufferSize]; // Send Personagem To the Enemy byte[] sendData = personagem.ToByteArray(); clientSocket.BeginSend(sendData, 0, sendData.Length, SocketFlags.None, SendCallback, null); // Listen for client data. Invoke((Action) delegate { ImageEnemy.Visible = true; ProntoButton.Text = "Esperando..."; }); clientSocket.BeginReceive(buffer, 0, buffer.Length, SocketFlags.None, ReceiveCallback, null); // Continue listening for clients. serverSocket.BeginAccept(AcceptCallback, null); } catch (SocketException ex) { ShowErrorDialog(ex.Message); } catch (ObjectDisposedException ex) { ShowErrorDialog(ex.Message); } }