コード例 #1
0
ファイル: Form1.cs プロジェクト: astralenigma/ProjectoCD
        /*Código onde os partidos são adicionados à interface.*/
        //private void inicializacaoDosPartidos(int nmrPartidos)
        //{
        //    comboBox1.Sorted = false;
        //    for (int i = 0; i <= nmrPartidos; i++)
        //    {
        //        comboBox1.Items.Add(i);
        //    }
        //}

        /// <summary>
        ///Método do botão da mensagem.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void button2_Click(object sender, EventArgs e)
        {
            try
            {
                if (!clientSocket.Connected)
                {
                    clientSocket.Connect(textBox3.Text, PORTASCV);
                }
                oPC.enviarMensagem(textBox1.Text + " " + textBox2.Text);
                //Aqui ele recebe a resposta não quer dizer que ele goste dela.
                mensagens(oPC.receberMensagem());
                //Apagar o input e mostrar o resultado.
                //inicializacaoDosPartidos(nmrPartidos);
            }
            catch (SocketException ex)
            {
                if (ex.ErrorCode == 10061)
                {
                    MessageBox.Show("Servidor não encontrado, tente outra vez.", "Mensagem de erro", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
                    //toggleVisibilidade();
                    //button2.Visible = false;
                }
            }
            //Não gosto do facto de estar a usar uma string para meter o IP em vez de algo
            //mais automático com menos necessidade de um programador a fuçar no código
        }
コード例 #2
0
ファイル: Form1.cs プロジェクト: astralenigma/ProjectoARC
        private void button1_Click(object sender, EventArgs e)
        {
            //Código onde recebe o voto escolhido.

            //Aqui ele envia a informação do utilizador.
            try
            {
                oPC.enviarMensagem(textBox1.Text + " " + comboBox1.SelectedItem);

                //Aqui ele recebe a resposta não quer dizer que ele goste dela.
                mensagens(oPC.receberMensagem());

                //Apagar o input e mostrar o resultado.

                limparCampos();
                toggleVisibilidade();
            }
            catch (SocketException ex)
            {
                if (ex.ErrorCode == 10054)
                {
                    toggleVisibilidade();
                    label3.Text     = "Conecção ao SCV perdida por favor reinicie o terminal.";
                    button2.Visible = false;
                }
            }
        }
コード例 #3
0
        //Método de receber o BI para confirmação
        static void confirmacaoBIconeccao()
        {
            byte[] data = new byte[1024];
            try
            {
                string mensagemRecebida = oPC.receberMensagem();
                switch (votando(mensagemRecebida))
                {
                case 0:
                    oPC.enviarMensagem("Ok");
                    Console.WriteLine("Ok");    //check
                    break;

                case 1:
                    oPC.enviarMensagem("BI Usado");
                    Console.WriteLine("BI Usado");    //check
                    break;

                case 2:
                    oPC.enviarMensagem("BI Nao Encontrado");
                    Console.WriteLine("BI Nao Encontrado");    //check
                    break;
                }
            }
            catch (SocketException ex)
            {
                if (ex.ErrorCode == 10054)
                {
                    Console.WriteLine("Conecção perdida tentando restabelecer conecção.");
                    estabelecerConeccao();
                }
            }
        }
コード例 #4
0
ファイル: Program.cs プロジェクト: astralenigma/ProjectoARC
            private void doVoto()
            {
                //Boolean erro = false;
                try
                {
                    do
                    {
                        String[] mensagem = cliPC.receberMensagem().Split(' ');

                        srePC.enviarMensagem(mensagem[0]);
                        /*erro =*/ accaoDependeSRE(srePC.receberMensagem(), mensagem[1]);
                    } while (true);
                }
                catch (TRVCaiuException)
                {
                    Console.WriteLine("O cliente desconectou-se.");
                }
                catch (SocketException ex)
                {
                    if (ex.ErrorCode == 10054)
                    {
                        Console.WriteLine("Desconectado do SRE.");
                        cliPC.enviarMensagem("4");
                    }
                }
            }
コード例 #5
0
 private void doVoto()
 {
     try
     {
         bool varLogin = false;
         do
         {
             varLogin = login();
             if (!varLogin)
             {
                 cliPC.enviarMensagem("1");
             }
         } while (!varLogin && cliPC.getSocket().Connected);
         Console.WriteLine("Login bem sucedido.");
         cliPC.enviarMensagem("3");
         cliPC.enviarMensagem(fileName);
         cliPC.receberMensagem();
         Thread erThread = new Thread(enviarResultados);
         erThread.Start();
         //ESTÁ TUDO A FUNCIONAR MAS NÃO ME CULPES A MIM.
         incrementarVoto(Convert.ToInt32(cliPC.receberMensagem()));
         enviarResultados();
         //return false;
         //srePC.enviarMensagem(mensagem[0]);
         ///*erro =*/ accaoDependeSRE(srePC.receberMensagem(),mensagem[1]);
     }
     catch (TRVCaiuException)
     {
         Console.WriteLine("O cliente desconectou-se.");
     }
     catch (SocketException ex)
     {
         if (ex.ErrorCode == 10054)
         {
             Console.WriteLine("Desconectado do SRE.");
             cliPC.enviarMensagem("4");
         }
         else
         {
             Console.WriteLine("Erro na conecção.");
         }
     }
 }
コード例 #6
0
        static void Main(string[] args)
        {
            Socket socket            = conectar("127.0.0.1");
            ProcessosComunicacao oPC = new ProcessosComunicacao(socket);
            Thread Receber           = new Thread(new ThreadStart(oPC.enviarMensagens));
            Thread Enviar            = new Thread(new ThreadStart(oPC.receberMensagens));

            //Receber.Start();
            //Enviar.Start();

            oPC.receberMensagem();
            oPC.enviarMensagens();

            socket.Shutdown(SocketShutdown.Both);
            socket.Close();
            //Console.ReadLine();
        }