コード例 #1
0
ファイル: HostServer.cs プロジェクト: JADERLINK/Xadrez
        void AoSairDoPrograma(object sender, EventArgs e)
        {
            // do host
            if (SeServerEstaHosteado == true)
            {
                if (TcpClientDoCliente != null)
                {
                    ClientEstaConectado = false;
                    TcpClientDoCliente.Close();
                    ManipulaDados.Close();
                }
                TcpListenerHost.Stop();
                TcpListenerHost = null;

                SeServerEstaHosteado = false;
                ThreadEsperaClientEntrar.Abort();
                ThreadComunica_seComOClient.Abort();
            }

            // do client
            if (ClientEstaConectadoComHost == true)
            {
                ClientEstaConectadoComHost = false;
                OndeClientEstaConectado.Close();
                ManipulaDados.Close();
                ThreadComunica_seComHost.Abort();
            }
        }
コード例 #2
0
ファイル: HostServer.cs プロジェクト: JADERLINK/Xadrez
        bool EnviaDados(string StringASerEnviada)
        {
            try
            {
                //string Nada = "NADA";
                //byte[] sendBytesNada = Encoding.UTF8.GetBytes(Nada);
                //ManipulaDados.Write(sendBytesNada, 0, sendBytesNada.Length);
                byte[] sendBytes = Encoding.UTF8.GetBytes(StringASerEnviada);
                ManipulaDados.Write(sendBytes, 0, sendBytes.Length);
                ManipulaDados.Flush();

                return(true);
            }
            catch (IOException)
            {
                // se recebe essa "Exception", é por q n tem como se comunicar com o outro lado
                if (SeServerEstaHosteado == true)
                {
                    ClientEstaConectado = false;
                    TcpClientDoCliente.Close();
                    ManipulaDados.Close();

                    ImportandoXadrezClass.PlayerDoUsuario = 3;

                    //textBoxChat.Text += "Perdeu-se A Conexão Com O Outro Jogador," + Environment.NewLine +
                    //    "Espere Ele Reconectar-se Para Jogar;" + Environment.NewLine;

                    SetControlPropertyValue(textBoxChat, "Text", textBoxChat.Text + T_CHAT__Perdeu_se_A_Conexão_Com_O_Outro_Jogador + Environment.NewLine + //"Perdeu-se A Conexão Com O Outro Jogador," + Environment.NewLine +
                                            T_CHAT__Espere_Ele_Reconectar_se_Para_Jogar + Environment.NewLine);                                             //"Espere Ele Reconectar-se Para Jogar;" + Environment.NewLine);
                }
                if (ClientEstaConectadoComHost == true)
                {
                    ClientEstaConectadoComHost = false;
                    OndeClientEstaConectado.Close();
                    ManipulaDados.Close();
                    ThreadComunica_seComHost.Abort();
                    ImportandoXadrezClass.PlayerDoUsuario = 3;

                    //textBoxChat.Text += "Você Perdeu A Conexão Com O Servidor;" + Environment.NewLine;
                    SetControlPropertyValue(textBoxChat, "Text", textBoxChat.Text + T_CHAT__Voce_Perdeu_A_Conexao_Com_O_Servidor + Environment.NewLine); //"Você Perdeu A Conexão Com O Servidor;" + Environment.NewLine);
                }

                return(false);
            }
            catch (Exception)
            {
                return(false);
            }
        }
コード例 #3
0
ファイル: HostServer.cs プロジェクト: JADERLINK/Xadrez
        public void EnviaAsMensagens()
        {
            try
            {
                // do host
                if (ClientEstaConectado == true)
                {
                    if (textBoxEnviaProChat.Lines.Length >= 1)
                    {
                        string StringASerEnviada = "1 " + "Azul: " + textBoxEnviaProChat.Text + Environment.NewLine;
                        string oqvaiaparecer     = "Azul: " + textBoxEnviaProChat.Text + Environment.NewLine;
                        textBoxEnviaProChat.Lines = null;
                        textBoxEnviaProChat.Text  = "";

                        //string Nada = "NADA";
                        //byte[] sendBytesNada = Encoding.UTF8.GetBytes(Nada);
                        //ManipulaDados.Write(sendBytesNada, 0, sendBytesNada.Length);

                        byte[] sendBytes = Encoding.UTF8.GetBytes(StringASerEnviada);
                        ManipulaDados.Write(sendBytes, 0, sendBytes.Length);
                        ManipulaDados.Flush();
                        textBoxChat.Text += oqvaiaparecer;
                    }
                }
                // do client
                else if (ClientEstaConectadoComHost == true)
                {
                    if (textBoxEnviaProChat.Lines.Length >= 1)
                    {
                        string StringASerEnviada = "2 " + textBoxEnviaProChat.Text + Environment.NewLine;
                        textBoxEnviaProChat.Lines = null;
                        textBoxEnviaProChat.Text  = "";

                        //string Nada = "NADA";
                        //byte[] sendBytesNada = Encoding.UTF8.GetBytes(Nada);
                        //ManipulaDados.Write(sendBytesNada, 0, sendBytesNada.Length);

                        byte[] sendBytes = Encoding.UTF8.GetBytes(StringASerEnviada);
                        ManipulaDados.Write(sendBytes, 0, sendBytes.Length);
                        ManipulaDados.Flush();
                    }
                }
            }
            catch (IOException)
            {
                // se recebe essa "Exception", é por q n tem como se comunicar com o outro lado
                if (SeServerEstaHosteado == true)
                {
                    ClientEstaConectado = false;
                    TcpClientDoCliente.Close();
                    ManipulaDados.Close();

                    ImportandoXadrezClass.PlayerDoUsuario = 3;
                    ;
                    textBoxChat.Text += T_CHAT__Perdeu_se_A_Conexão_Com_O_Outro_Jogador + Environment.NewLine + //"Perdeu-se A Conexão Com O Outro Jogador," + Environment.NewLine +
                                        T_CHAT__Espere_Ele_Reconectar_se_Para_Jogar + Environment.NewLine;      //"Espere Ele Reconectar-se Para Jogar;" + Environment.NewLine;
                }
                if (ClientEstaConectadoComHost == true)
                {
                    ClientEstaConectadoComHost = false;
                    OndeClientEstaConectado.Close();
                    ManipulaDados.Close();
                    ThreadComunica_seComHost.Abort();
                    ImportandoXadrezClass.PlayerDoUsuario = 3;

                    textBoxChat.Text += T_CHAT__Voce_Perdeu_A_Conexao_Com_O_Servidor + Environment.NewLine; //"Você Perdeu A Conexão Com O Servidor;" + Environment.NewLine;
                }
            }
            catch (Exception)
            {
            }
        }