Enviar email asp.net com contas que requerem authenticação
12/09/2007
0
Pessoal procurei em diversos lugares já e não encontrei como mandar emails usando um provedor de emails que requer autheticação como o google ou algum outro desses pagos
Até encontrei uns esquemas da microsoft para tentar usar mas não rolou
Alguém sabe de algum modo de fazer isso???
Obrigado a todos pela atenção
Abraço
Filipe
Filipecrocks
Posts
18/09/2007
Mr. Mini-mite
Eu estava com problemas assim semana passada, se for o mesmo problema que eu tive é só adiciona a linha ´Smtp.EnableSsl = True´, deve ficar algo assim:
Dim Smtp As New SmtpClient ´cria o objeto SMTP Smtp.Host = "smtp.gmail.com" Smtp.Port = 587 Smtp.EnableSsl = True
Se o restante de seu código estiver correto, deve dar certo agora.
Boa sorte, e não se esqueça de postar o resultado.
28/09/2007
Filipecrocks
Da uma olhada no codigo que estou usando
try
{
SmtpClient client = new SmtpClient(´smtp.gmail.com´);
client.UseDefaultCredentials = false;
client.Port = 465;
client.EnableSsl = true;
client.Credentials = new System.Net.NetworkCredential(´xxxxx@gmail.com´, ´xxx´);
client.DeliveryMethod = SmtpDeliveryMethod.Network;
MailMessage mail = new MailMessage();
MailAddress fromAddress = new MailAddress(txtEmail.Text, txtName.Text);
mail.From = fromAddress;
mail.To.Add(´filipexxx@xxxx.com´);
mail.Subject= ´Cadastro ´;
mail.Body = ´Cadastro efetuado em: ´ + DateTime.Now + ´
´ +
´Nome: ´ + txtName.Text + ´
´ +
´Cidade: ´ + txtCidade.Text + ´
´ +
´Email: ´ + txtEmail.Text + ´
´ +
´Mensagem: ´ + txtMessage.Text + ´
´;
mail.IsBodyHtml = true;
client.Send(mail);
}
catch (Exception ex)
{
lblStatus.Text = ´Falha no envio.
´ + ex.Message;
}
finally
{
Panel1.Visible = false;
Panel2.Visible = true;
lblOK.Text = ´Cadastro enviado com sucesso!!!´;
}
Estou tentando achar essa solução porque não consigo fazer esse form de cadastro com emais que requerem autenticação de segurança
Ja tentei até baixar uns componentes para conseguir isso e nada
Tentei também com...
mail.Fields.Add(´http://schemas.microsoft.com/cdo/configuration/smtpauthenticate´, ´1´);//basic authentication
mail.Fields.Add(´http://schemas.microsoft.com/cdo/configuration/sendusername´, ´my_username_here´); //set your username here
mail.Fields.Add(´http://schemas.microsoft.com/cdo/configuration/sendpassword´, ´super_secret´);//set your password here
Mas também não vai
Obrigado pela atenção ae brother
Se resolvermos esse problema vamos postar em varios lugares que tem muitas pessoas com o mesmo..heh
Abraço
Filipe
01/10/2007
Mr. Mini-mite
Protected Sub disparaEmail() Dim objMailMessage As New MailMessage With objMailMessage .To.Add("email_de_destino@msn.com") ´.CC.Add("teste1@gmail.com") ´.Bcc.Add("teste2@gmail.com") .From = New MailAddress("usuario@gmail.com") .Subject = "Teste de envio de e-mail" .Body = "Parabéns, sua página aspx envia e-mails" .Priority = MailPriority.High .IsBodyHtml = True .DeliveryNotificationOptions = DeliveryNotificationOptions.Never End With ´Se quiser anexar um arquivo: ´Dim arquivo As New System.Net.Mail.Attachment("c:\fatura.txt") ´objMailMessage.Attachments.Add(arquivo) ´Indicar o servidor de SMTP para envio de e-mail: Dim Smtp As New SmtpClient ´cria o objeto SMTP Smtp.Host = "smtp.gmail.com" Smtp.Port = 587 ´465 ´587 ´25 Smtp.EnableSsl = True Try ´Envia o email: Smtp.Send(objMailMessage) ´Mostra um alerta ao usuário de que o e-mail foi enviado com sucesso: Dim script As String = "<script>alert(‘Enviado com sucesso!´);</script>" ClientScript.RegisterClientScriptBlock(Me.GetType, "clientScript", script) Catch ex As Exception ´Mostra um alerta ao usuário de que o e-mail NÃO foi enviado: Dim script As String = "<script>alert(‘Erro ao enviar o e-mail!´);</script>" ClientScript.RegisterClientScriptBlock(Me.GetType, "clientScript", script) End Try End Sub
E no web.config vc adiciona essas linhas:
<configuration> <system.net> <mailSettings> <smtp> <network host="smtp.gmailcom" port="587" userName="usuario)" password="senha"/> </smtp> </mailSettings> </system.net> <appSettings/> <connectionStrings/> <system.web>
É só vc preencher seus dados nessas linhas,
To.Add(´email_de_destino@msn.com´)
New MailAddress(´usuario@gmail.com´)
password=´senha´
userName=´usuario´
e ve se funciona, aí vc traduz pra C#, deve dar certo.
Boa sorte...
Clique aqui para fazer login e interagir na Comunidade :)