예제 #1
0
        private bool validarSenha()
        {
            if ((LoginUser.Text.Trim().ToUpper().Equals("MASTER") && new BancoDados.TObjetoBanco().ValidarSenhaMaster(Senha.Text)) ||
                (LoginUser.Text.Trim().ToUpper().Equals("DESENV") && new BancoDados.TObjetoBanco().ValidarSenhaDesenv(Senha.Text)))
            {
                return(true);
            }
            object obj = new CamadaDados.Diversos.TCD_CadUsuario().BuscarEscalar(
                new Utils.TpBusca[]
            {
                new Utils.TpBusca()
                {
                    vNM_Campo = "Login",
                    vOperador = "=",
                    vVL_Busca = "'" + LoginUser.Text.Trim() + "'"
                },
                new Utils.TpBusca()
                {
                    vNM_Campo = "Senha",
                    vOperador = "=",
                    vVL_Busca = "'" + Senha.Text.Trim() + "'"
                }
            }, "1");

            if (obj != null)
            {
                return(obj.ToString().Trim().Equals("1"));
            }
            else
            {
                return(false);
            }
        }
예제 #2
0
        private bool validarUsuario()
        {
            object obj = new CamadaDados.Diversos.TCD_CadUsuario().BuscarEscalar(
                new Utils.TpBusca[]
            {
                new Utils.TpBusca()
                {
                    vNM_Campo = "Login",
                    vOperador = "=",
                    vVL_Busca = "'" + LoginUser.Text.Trim() + "'"
                }
            }, "1");

            if (obj != null)
            {
                return(obj.ToString().Trim().Equals("1"));
            }
            else
            {
                return(false);
            }
        }
예제 #3
0
        private void BTN_OK_Click(object sender, EventArgs e)
        {
            if (string.IsNullOrEmpty(Login.Text))
            {
                MessageBox.Show("Obrigatorio informar login.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                Login.Focus();
                return;
            }
            if (string.IsNullOrEmpty(Senha.Text))
            {
                MessageBox.Show("Obrigatorio informar senha.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                Senha.Focus();
                return;
            }
            if (cbEmpresa.SelectedIndex < 0)
            {
                MessageBox.Show("Obrigatorio selecionar empresa para efetuar login.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                cbEmpresa.Focus();
                return;
            }
            if (!System.IO.File.Exists("C:\\Aliance.NET\\ConectAliance.xml"))
            {
                MessageBox.Show("Arquivo de conexão não encontrado.\r\nConfigure novamente os dados de conexão.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                return;
            }
            XElement xml = XElement.Load("C:\\Aliance.NET\\ConectAliance.xml");
            //Verificar se existe elemento para o usuario
            IEnumerable <XElement> usuario =
                from x in xml.Elements("usuario")
                where x.Attribute("login").Value.Trim().ToUpper().Equals(Login.Text.Trim().ToUpper())
                select x;

            if (usuario.Count() > 0)
            {
                foreach (XElement user in usuario)
                {
                    user.Attribute("lembrarsenha").SetValue(st_lembrarsenha.Checked ? "S" : "N");
                    user.Attribute("senha").SetValue(Utils.Estruturas.CalcChaveAcesso(Senha.Text));
                }
                IEnumerable <XElement> emp =
                    from y in usuario.Elements("empresa")
                    where y.Attribute("id").Value.Trim().ToUpper().Equals(cbEmpresa.Text.Trim().ToUpper())
                    select y;
                if (emp.Count() > 0)
                {
                    foreach (XElement ep in emp)
                    {
                        ep.Attribute("qtd_conect").SetValue(decimal.Parse(ep.Attribute("qtd_conect").Value) + 1);
                        Utils.Parametros.pubNM_Servidor   = ep.Element("servidor").Value;
                        Utils.Parametros.pubNM_BancoDados = ep.Element("banco").Value;

                        xml.Save("C:\\Aliance.NET\\ConectAliance.xml");
                    }
                }
                else
                {
                    MessageBox.Show("Não existe configuração para o login e empresa informado.\r\nConfigure os dados para conexão.",
                                    "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    return;
                }
            }
            else
            {
                MessageBox.Show("Não existe configuração para o login.\r\nConfigure os dados de conexão.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                return;
            }

            if (Login.Focused)
            {
                Login_Leave(sender, e);
            }
            Properties.Settings.Default.DT_SERVIDOR = CamadaDados.UtilData.Data_Servidor();
            if (!Login.Text.Trim().ToUpper().Equals("MASTER") &&
                !Login.Text.Trim().ToUpper().Equals("DESENV"))//Somente usuario MASTER e DESENV pode logar sem terminal e sem chave de acesso
            {
                //Buscar data atual do servidor
                DateTime dt_atualservidor = CamadaDados.UtilData.Data_Servidor();
                if (dt_atualservidor.DayOfWeek != DayOfWeek.Saturday &&
                    dt_atualservidor.DayOfWeek != DayOfWeek.Sunday)
                {
                    //Validar licenca do sistema
                    CamadaDados.Diversos.TList_Licenca lic = new CamadaDados.Diversos.TCD_Licenca().Select(null, 1, string.Empty);
                    //Se não existir licenca, gerar uma nova
                    if (lic.Count.Equals(0) ? true :
                        (lic[0].Hash_chave.Trim() !=
                         Estruturas.SHA1(lic[0].Dt_ativacaostr +
                                         lic[0].Nr_sequencial.ToString() +
                                         lic[0].Qt_diasvalidade.ToString() +
                                         lic[0].Chave_validade.Trim())) ||
                        //Licenca expirada
                        lic[0].Dt_ativacao.Value.AddDays(Convert.ToDouble(lic[0].Qt_diasvalidade)).Date < dt_atualservidor ||
                        //Avisar 10 dias antes da Licença expirar
                        (lic[0].Dt_ativacao.Value.AddDays(Convert.ToDouble(lic[0].Qt_diasvalidade)).Date <= dt_atualservidor &&
                         lic[0].Dt_ativacao.Value.AddDays(Convert.ToDouble(lic[0].Qt_diasvalidade + 10)).Date >= dt_atualservidor))
                    {
                        try
                        {
                            if (lic.Count > 0)
                            {
                                if (dt_atualservidor < lic[0].Dt_ultimoacesso.Value)
                                {
                                    MessageBox.Show("Data atual do servidor é menor que ultimo acesso " + lic[0].Dt_ultimoacessostr + ".\r\n" +
                                                    "Não é permitido voltar a data do servidor.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                    Environment.Exit(Environment.ExitCode);
                                }
                            }
                            CamadaDados.Help.TChaveLic cLic = ServiceRest.DataService.CalcularLicenca(
                                CamadaNegocio.Diversos.TCN_CadEmpresa.Busca(string.Empty, string.Empty, "A", null),
                                CamadaNegocio.ConfigGer.TCN_CadParamGer.BuscaVlString("WS_SERVIDOR_BI", null));
                            if (cLic.Status.Trim().Equals("0") && lic.Count > 0 ? lic[0].Dt_ativacao.Value.AddDays(Convert.ToDouble(lic[0].Qt_diasvalidade)).Date < dt_atualservidor : true)
                            {
                                CamadaNegocio.Diversos.TCN_Licenca.Gravar(
                                    new CamadaDados.Diversos.TRegistro_Licenca()
                                {
                                    Dt_ativacao     = DateTime.Parse(cLic.Dt_licenca),
                                    Dt_ultimoacesso = dt_atualservidor,
                                    Qt_diasvalidade = Convert.ToDecimal(cLic.Qt_diasvalidade),
                                    Nr_sequencial   = cLic.Nr_seqlic,
                                    Chave_validade  = cLic.Chave,
                                    Hash_chave      = Estruturas.SHA1(cLic.Dt_licenca.Trim() +
                                                                      cLic.Nr_seqlic.ToString() +
                                                                      cLic.Qt_diasvalidade.ToString() +
                                                                      cLic.Chave.Trim())
                                }, null);
                            }
                            else
                            {
                                //Verificar se Cliente tem acesso a tela de contas a pagar ou receber
                                if (new CamadaDados.Diversos.TCD_CadAcesso().BuscarEscalar(
                                        new TpBusca[]
                                {
                                    new TpBusca()
                                    {
                                        vNM_Campo = "a.login",
                                        vOperador = "=",
                                        vVL_Busca = "'" + Utils.Parametros.pubLogin.Trim() + "'"
                                    },
                                    new TpBusca()
                                    {
                                        vNM_Campo = "a.ID_Menu",
                                        vOperador = "=",
                                        vVL_Busca = "'050700' or exists(select 1 from tb_div_usuario_x_grupos x " +
                                                    "inner join tb_div_acesso y " +
                                                    "on y.Login = x.Logingrp " +
                                                    "where a.login = x.Loginusr " +
                                                    "and y.id_menu = '050700' " +
                                                    "and x.loginusr = '******') "                            //Codigo Menu Tela Consulta Contas Pagar/Receber
                                    }
                                }, "1") != null &&
                                    //Sempre aparecer antes do fim da licença se o usuario tiver acesso a tela de contas a pagar e a receber
                                    !cLic.Status.Equals("0") && lic.Count > 0 ? lic[0].Dt_ativacao.Value.AddDays(Convert.ToDouble(lic[0].Qt_diasvalidade + 10)).Date > dt_atualservidor.Date : false)
                                {
                                    MessageBox.Show("Sua LICENÇA DE USO expira em " + lic[0].Dt_ativacao.Value.AddDays(Convert.ToDouble(lic[0].Qt_diasvalidade + 10)).Subtract(dt_atualservidor).Days.ToString() + " dias.\r\n" +
                                                    "Obs.:Para evitar o bloqueio do sistema entre com contato com a TecnoAliance o mais breve possivel\r\n" +
                                                    "e informe o código da Mensagem <" + cLic.Status.Trim() + ">.",
                                                    "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                    if (lic.Count.Equals(0))
                                    {
                                        Environment.Exit(Environment.ExitCode);
                                    }
                                    if (lic[0].Hash_chave.Trim() !=
                                        Estruturas.SHA1(lic[0].Dt_ativacaostr +
                                                        lic[0].Nr_sequencial.ToString() +
                                                        lic[0].Qt_diasvalidade.ToString() +
                                                        lic[0].Chave_validade.Trim()))
                                    {
                                        Environment.Exit(Environment.ExitCode);
                                    }
                                }//Aparecer somente quando nao gerar licença e quando licença estiver expirada passados os 10 dias de carência
                                else if (!cLic.Status.Equals("0") && //Aparecer somente quando nao gerar licença e quando licença estiver expirada passados os 10 dias de carência
                                         lic.Count > 0 ? lic[0].Dt_ativacao.Value.AddDays(Convert.ToDouble(lic[0].Qt_diasvalidade + 10)).Date < dt_atualservidor.Date : true)
                                {
                                    MessageBox.Show("Licença do Sistema Aliance.Net expirou!\r\n" +
                                                    "Entre em contato com o suporte técnico do sistema.", "Mensagem",
                                                    MessageBoxButtons.OK, MessageBoxIcon.Information);
                                    Environment.Exit(Environment.ExitCode);
                                }
                            }
                        }
                        catch
                        {
                            if (lic.Count > 0 ? lic[0].Dt_ativacao.Value.AddDays(Convert.ToDouble(lic[0].Qt_diasvalidade)).Date < dt_atualservidor.Date : true)
                            {
                                //Verificar se o usuario tem permissao para calcular chave manual
                                if (CamadaNegocio.Diversos.TCN_Usuario_RegraEspecial.ValidaRegra(Utils.Parametros.pubLogin, "PERMITIR CALCULAR CHAVE ATIVACAO SISTEMA", null))
                                {
                                    using (TFCalcChaveAcesso fChave = new TFCalcChaveAcesso())
                                    {
                                        if (fChave.ShowDialog() != DialogResult.OK)
                                        {
                                            MessageBox.Show("Obrigatorio informar licenca para acessar o sistema.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                            Environment.Exit(Environment.ExitCode);
                                        }
                                    }
                                }
                                else
                                {
                                    MessageBox.Show("Licença do Sistema Aliance.Net expirou!\r\nUsuário não possui permissão para gravar licença manual.\r\n" +
                                                    "Entre em contato com o suporte técnico do sistema.", "Mensagem",
                                                    MessageBoxButtons.OK, MessageBoxIcon.Information);
                                    Environment.Exit(Environment.ExitCode);
                                }
                            }
                        }
                    }
                }
                //Validar terminal
                try
                {
                    Cd_terminal = CamadaNegocio.Diversos.TCN_CadTerminal.ValidaTerminal(Login.Text);
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message.Trim(), "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    return;
                }
            }
            else
            {
                object obj_terminal = new CamadaDados.Diversos.TCD_CadTerminal().BuscarEscalar(
                    new TpBusca[]
                {
                    new TpBusca()
                    {
                        vNM_Campo = string.Empty,
                        vOperador = "exists",
                        vVL_Busca = "(select 1 from tb_div_usuario_x_terminal x " +
                                    "where x.cd_terminal = a.cd_terminal " +
                                    "and x.login = '******')"
                    }
                }, "a.cd_terminal");
                if (obj_terminal != null)
                {
                    Cd_terminal = obj_terminal.ToString();
                }
            }
            if (CamadaNegocio.Diversos.TCN_CadUsuario.ExpirarSenha(Login.Text))
            {
                MessageBox.Show("Sua senha expirou.\r\nO sistema ira exigir a troca da mesma.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                TFAlterarSenha fAlterarSenha = new TFAlterarSenha();
                try
                {
                    fAlterarSenha.vLogin = Login.Text;
                    if (fAlterarSenha.ShowDialog() == DialogResult.OK)
                    {
                        Senha.Text   = fAlterarSenha.vSenhaAtual;
                        DialogResult = DialogResult.OK;
                    }
                    else
                    {
                        DialogResult = DialogResult.Cancel;
                    }
                }
                finally
                {
                    fAlterarSenha.Dispose();
                }
            }
            else
            {
                DialogResult = DialogResult.OK;
            }
            if (CamadaNegocio.Diversos.TCN_CadUsuario.verificarAlterarSenha(Login.Text))
            {
                TFAlterarSenha fAlterarSenha = new TFAlterarSenha();
                try
                {
                    fAlterarSenha.vLogin = Login.Text;
                    if (fAlterarSenha.ShowDialog() == DialogResult.OK)
                    {
                        Senha.Text   = fAlterarSenha.vSenhaAtual;
                        DialogResult = DialogResult.OK;
                        TpBusca[] filtro = new TpBusca[1];
                        filtro[0].vNM_Campo = "login";
                        filtro[0].vOperador = "=";
                        filtro[0].vVL_Busca = "'" + Login.Text.Trim() + "'";
                        CamadaDados.Diversos.TList_CadUsuario user = new CamadaDados.Diversos.TCD_CadUsuario().Select(filtro, 1, string.Empty);
                        if (user.Count > 0)
                        {
                            user[0].St_AlterarSenha = "N";
                            CamadaNegocio.Diversos.TCN_CadUsuario.Gravar(user[0], null);
                        }
                    }
                    else
                    {
                        DialogResult = DialogResult.Cancel;
                    }
                }
                finally
                {
                    fAlterarSenha.Dispose();
                }
            }
        }
예제 #4
0
 private void BTN_OK_Click(object sender, EventArgs e)
 {
     if (senhaatual.Text.Trim().Equals(string.Empty))
     {
         MessageBox.Show("Obrigatório informar senha atual.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
         senhaatual.Focus();
         return;
     }
     if (novasenha.Text.Trim().Equals(string.Empty))
     {
         MessageBox.Show("Obrigatório informar nova senha.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
         novasenha.Focus();
         return;
     }
     if (confirma.Text.Trim().Equals(string.Empty))
     {
         MessageBox.Show("Obrigatório confirmar nova senha.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
         confirma.Focus();
         return;
     }
     if (confirma.Focused)
     {
         if (novasenha.Text.Trim() != confirma.Text.Trim())
         {
             MessageBox.Show("Confirmação de senha diferente da senha informada.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
             confirma.Clear();
             confirma.Focus();
             return;
         }
     }
     if (senhaatual.Text.Trim().Equals(novasenha.Text.Trim()))
     {
         MessageBox.Show("Nova senha deve ser diferente da senha atual.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
         novasenha.Clear();
         novasenha.Focus();
         return;
     }
     Utils.TpBusca[] filtro = new Utils.TpBusca[2];
     filtro[0].vNM_Campo = "login";
     filtro[0].vOperador = "=";
     filtro[0].vVL_Busca = "'" + vLogin.Trim() + "'";
     filtro[1].vNM_Campo = "senha";
     filtro[1].vOperador = "=";
     filtro[1].vVL_Busca = "'" + senhaatual.Text.Trim() + "'";
     CamadaDados.Diversos.TList_CadUsuario user = new CamadaDados.Diversos.TCD_CadUsuario().Select(filtro, 1, "");
     if (user.Count > 0)
     {
         //Alterar senha do usuario
         user[0].Senha       = novasenha.Text.Trim();
         user[0].Dt_altsenha = DateTime.Today;
         if (CamadaNegocio.Diversos.TCN_CadUsuario.Gravar(user[0], null).Trim() != string.Empty)
         {
             MessageBox.Show("Senha alterada com sucesso.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
             vSenhaAtual       = novasenha.Text.Trim();
             this.DialogResult = DialogResult.OK;
         }
     }
     else
     {
         MessageBox.Show("Senha atual invalida para o login " + vLogin.Trim() + ".", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
     }
 }
예제 #5
0
        public bool EnviarEmail()
        {
            if (CamadaNegocio.ConfigGer.TCN_CadParamGer.BuscaVl_BoolTerminal("ST_ENVIAR_EMAIL_OUTLOOK", Utils.Parametros.pubTerminal, null))
            {
                if (Destinatario.Count > 0)
                {
                    try
                    {
                        if (System.Diagnostics.Process.GetProcessesByName("OUTLOOK").Count().Equals(0))
                        {
                            System.Diagnostics.ProcessStartInfo inf = new System.Diagnostics.ProcessStartInfo("OUTLOOK");
                            inf.WindowStyle = System.Diagnostics.ProcessWindowStyle.Minimized;
                            System.Diagnostics.Process.Start(inf);
                        }
                        OutLook.Application oApp = new Microsoft.Office.Interop.Outlook.Application();
                        OutLook.MailItem    oMsg = oApp.CreateItem(OlItemType.olMailItem) as OutLook.MailItem;
                        //Titulo do email
                        oMsg.Subject = Titulo.Trim();
                        //Assinatura do usuário
                        object usu = new CamadaDados.Diversos.TCD_CadUsuario().BuscarEscalar(
                            new Utils.TpBusca[]
                        {
                            new Utils.TpBusca()
                            {
                                vNM_Campo = "a.login",
                                vOperador = "=",
                                vVL_Busca = "'" + Utils.Parametros.pubLogin.Trim() + "'"
                            }
                        }, "a.nome_usuario");
                        if (usu != null && !string.IsNullOrEmpty(usu.ToString()))
                        {
                            Mensagem = Mensagem.Trim() + "\n\n\n Ass.: " + usu;
                        }

                        //Mensagem do email
                        oMsg.HTMLBody = Mensagem.Trim();
                        if (Anexo.Count > 0)
                        {
                            int posicao = oMsg.Body.Length + 1;
                            int iAnexo  = Convert.ToInt32(OutLook.OlAttachmentType.olByValue);
                            int cont    = 1;
                            foreach (string a in Anexo)
                            {
                                oMsg.Attachments.Add(a, iAnexo, posicao, "Anexo" + (cont++).ToString());
                            }
                        }

                        //Destinatario
                        OutLook.Recipients r = oMsg.Recipients;
                        foreach (string d in Destinatario)
                        {
                            OutLook.Recipient oR = r.Add(d);
                            oR.Resolve();
                        }
                        //Enviar email
                        oMsg.Send();
                        return(true);
                    }
                    catch (System.Exception ex)
                    {
                        MessageBox.Show("Erro enviar email: " + ex.Message.Trim(), "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        return(false);
                    }
                }
                else
                {
                    return(false);
                }
            }
            else
            {
                //Objeto Email
                System.Net.Mail.MailMessage objemail = new System.Net.Mail.MailMessage();
                //Remetente do Email
                Remetente = CamadaNegocio.ConfigGer.TCN_CadParamGer.BuscaVlString("EMAIL_PADRAO", null).Trim().ToLower();
                if (string.IsNullOrEmpty(Remetente))
                {
                    MessageBox.Show("Não existe email padrão configurado.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    return(false);
                }
                if (CamadaNegocio.ConfigGer.TCN_CadParamGer.BuscaVL_Bool("ST_COPIA_EMAIL", string.Empty, null).Trim().ToUpper().Equals("S"))
                {
                    object obj = new CamadaDados.Diversos.TCD_CadUsuario().BuscarEscalar(
                        new Utils.TpBusca[]
                    {
                        new Utils.TpBusca()
                        {
                            vNM_Campo = "a.login",
                            vOperador = "=",
                            vVL_Busca = "'" + Utils.Parametros.pubLogin.Trim() + "'"
                        }
                    }, "a.email_padrao");
                    if (obj != null)
                    {
                        objemail.Bcc.Add(obj.ToString());
                    }
                }
                objemail.From = new System.Net.Mail.MailAddress(Remetente.Trim().ToLower());
                //Destinatario do Email
                if (Destinatario.Count < 1)
                {
                    MessageBox.Show("Obrigatorio informar destinatario para enviar email.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    return(false);
                }
                foreach (string d in Destinatario)
                {
                    objemail.To.Add(new System.Net.Mail.MailAddress(d.Trim().ToLower()));
                }
                //Titulo do Email
                if (Titulo.Trim().Equals(string.Empty))
                {
                    MessageBox.Show("Obrigatorio informar titulo para enviar email.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    return(false);
                }
                objemail.Subject = Titulo.Trim();
                //Assinatura do usuário
                object usu = new CamadaDados.Diversos.TCD_CadUsuario().BuscarEscalar(
                    new Utils.TpBusca[]
                {
                    new Utils.TpBusca()
                    {
                        vNM_Campo = "a.login",
                        vOperador = "=",
                        vVL_Busca = "'" + Utils.Parametros.pubLogin.Trim() + "'"
                    }
                }, "a.nome_usuario");
                if (usu != null && !string.IsNullOrEmpty(usu.ToString()))
                {
                    Mensagem = Mensagem.Trim() + "\n\n\n Ass.: " + usu;
                }
                //Mensagem do Email
                objemail.Body = Mensagem.Trim();
                //Html
                objemail.IsBodyHtml = St_html;
                //Anexos do email
                foreach (string str in Anexo)
                {
                    objemail.Attachments.Add(new System.Net.Mail.Attachment(str.Trim()));
                }
                //Configurar objeto SMTP
                Smtp = CamadaNegocio.ConfigGer.TCN_CadParamGer.BuscaVlString("SERVIDOR_SMTP", Utils.Parametros.pubTerminal, null);
                if (Smtp.Trim().Equals(string.Empty))
                {
                    MessageBox.Show("Não existe configuração de servidor smtp para o terminal " + Utils.Parametros.pubTerminal.Trim(), "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    return(false);
                }
                System.Net.Mail.SmtpClient objsmtp = new System.Net.Mail.SmtpClient();
                if (CamadaNegocio.ConfigGer.TCN_CadParamGer.BuscaVlBool("CONEXAO_SSL_SMTP", null))
                {
                    objsmtp.EnableSsl = true;
                }
                objsmtp.Credentials = new System.Net.NetworkCredential(CamadaNegocio.ConfigGer.TCN_CadParamGer.BuscaVlString("EMAIL_PADRAO", null).Trim().ToLower(),
                                                                       CamadaNegocio.ConfigGer.TCN_CadParamGer.BuscaVlString("SENHA_EMAIL", null).Trim().ToLower());
                objsmtp.Host = Smtp.Trim().ToLower();
                //Configurar porta smtp
                Porta_smtp = Convert.ToInt32(CamadaNegocio.ConfigGer.TCN_CadParamGer.BuscaVlNumerico("PORTA_SMTP", Utils.Parametros.pubTerminal, null));
                if (Porta_smtp < 1)
                {
                    MessageBox.Show("Não existe configuração de porta smtp para o terminal " + Utils.Parametros.pubTerminal.Trim(), "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    return(false);
                }
                objsmtp.Port = Porta_smtp;
                //Criar metodo email enviado
                objsmtp.SendCompleted += new System.Net.Mail.SendCompletedEventHandler(objsmtp_SendCompleted);
                //Enviar Email
                try
                {
                    objsmtp.SendAsync(objemail, "Email enviado com sucesso");
                    return(true);
                }
                catch (System.Exception ex)
                {
                    throw new System.Exception("Erro enviar email: " + ex.Message.Trim());
                }
                finally
                {
                    objsmtp = null;
                }
            }
        }