View Full Version : Envio emails ASP.NET 2.0 + Configuração SMTP (IIS)


sPiPO[PT]
16-07-2007, 15:46
Caríssimos,

Preciso de uma ajuda vossa, que nada mais é a configuração do SMTP de forma que consiga enviar os e-mails.

A situação é a seguinte:

O código feito para o envio de e-mails está em vb.net e quando vou a enviar um e-mail, ele não envia, o problema é que fica sempre na directoria:
Inetpub\mailroot\Drop e não entendo porque....alguém sabe-me explicar? Como faço para o e-mail deixar de ficar na directoria Drop?

Tenho estado a tentar enviar os e-mails para o hotmail.
Será porque o hotmail precisa de alguma autenticação? Na qual isso deve ser feito no código?

Preciso da vossa ajuda....

Alguém que me dê uma luz....

Obrigado.

MCumprimentos,

Carlos Menezes

b1t dA3m0n
16-07-2007, 19:16
Em vb.net nao sei, deixo-te um exemplo em c#:



MailMessage theMailMessage = new MailMessage("from@email.com", "to@email.com");
theMailMessage.Body = "body email message here";
theMailMessage.Attachments.Add(new Attachment("pathToEmailAttachment"));
theMailMessage.Subject = "Subject here";

SmtpClient theClient = new SmtpClient("IP.Address.Of.Smtp");
theClient.UseDefaultCredentials = false;
System.Net.NetworkCredential theCredential = new System.Net.NetworkCredential("user@name.com", "password");
theClient.Credentials = theCredential;
theClient.Send(theMailMessage);
O servico de SMTP tem que estar instalado no computador que executa o codigo, obviamente (nao será este o teu problema ? :p)

nmb_23
17-07-2007, 17:16
boas...

olha eu implementei este código em ASP.NET, e está a funcionar perfeitamente.

No entanto é necessário que tenhas em atenção um aspecto muito importante, se queres enviar o email para fora da de uma organização, ou seja, se não são emails internos, deves assegurar que o ip da maquina em que está a correr a aplicação que enviará o email tem permissão para o envio de emails.

No caso de não ter, pede ao administrador da rede que o faça...

CÓDIGO DE ENVIO DE EMAILS ASP.NET:

Private Function enviaMailConfirmacao(ByVal email As String) As Boolean
enviaMailConfirmacao = False
Dim MailEmissor As String = "mail-emissor@dominio.pt"
Dim Assunto As String = "mail de teste"
Dim Menssagem As String = "menssagem de teste"
Dim MailDestino As String = "mail-destino@hotmail.com"

'-------------------------------------------------------------------
Dim mail As New System.Web.Mail.MailMessage
Dim mailForm As New System.Web.Mail.MailMessage
mail.To = MailDestino
mail.From = MailEmissor
mail.Subject = Assunto
mail.Body = Menssagem
Dim ServidorMail As String = "smtp.dominio.pt"
System.Web.Mail.SmtpMail.SmtpServer = ServidorMail

Try
System.Web.Mail.SmtpMail.Send(mail)
enviaMailConfirmacao = True
Catch exc As Exception
enviaMailConfirmacao = False
End Try
End Function