コード例 #1
0
        public static void enviaEmail(String[] parametros, String dsHost, Int16 vlPorta, Boolean vlSSL, String dsEmailAutenticadao, String dsPassword, String dsEmailRemetente, String dsEmailDestinatario, String dsEmailAssunto, String dsEmailTexto, Boolean blConfirmacaoLeitura = false)
        {
            using (SmtpClient smtp = new SmtpClient())
            {
                /*enviaEmail(new String[] {1}, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11);
                 * 1 - Anexos. Exemplo "anexo1.zip", "anexo2.zip"
                 * 2 - Servidor do SMPT. Exemplo smtp.gmail.com
                 * 3 - Porta autenticação. Exemplo: 587
                 * 4 - Autenticação segura SSL. Exemplo: true/false
                 * 5 - E-mail usado para a autenticação
                 * 6 - Senha do e-mail usado para a autenticação
                 * 7 - E-mail do remetente
                 * 8 - E-mail do destinatário
                 * 9 - Assunto do E-mail
                 * 10 - Texto do E-mail
                 * 11 - Quando estiver como True será solicitado a confirmação de leitura
                 */
                smtp.Host        = dsHost;
                smtp.Port        = vlPorta;
                smtp.EnableSsl   = vlSSL;
                smtp.Credentials = new NetworkCredential(dsEmailAutenticadao, dsPassword);

                using (MailMessage mail = new MailMessage())
                {
                    //Prioriedade do e-mail
                    mail.Priority = MailPriority.High;
                    //Confirmação de recebimento
                    if (blConfirmacaoLeitura)
                    {
                        mail.Headers.Add("Disposition-Notification-To", dsEmailRemetente);
                    }
                    //E-mail de Origem
                    mail.From = new MailAddress(dsEmailRemetente);
                    //E-mail destinatário
                    mail.To.Add(new MailAddress(dsEmailDestinatario));
                    //E-mail em cópia
                    //mail.CC.Add(new MailAddress("*****@*****.**"));
                    //E-mail em cópia oculta
                    //mail.Bcc.Add(new MailAddress("*****@*****.**"));

                    //Assunto do E-mail
                    mail.Subject = dsEmailAssunto;
                    //Texto do E-mail
                    mail.Body = dsEmailTexto;

                    foreach (string file in parametros)
                    {
                        mail.Attachments.Add(new Attachment(file));
                    }

                    smtp.Timeout = 100000;
                    try
                    {
                        smtp.Send(mail);
                        mail.Dispose();
                        smtp.Dispose();
                        Alert.informacao("E-mail enviado com Sucesso!");
                    }
                    catch (Exception erro)
                    {
                        mail.Dispose();
                        smtp.Dispose();
                        Alert.erro(String.Format("Erro ao enviar E-mail.\n{0}", erro.Message));
                    }
                }
            }
        }