2017-01-23 133 views
0

我想检查本地发送的电子邮件。我用这个代码从本地域发送电子邮件到域外的电子邮件

If DT.Rows.Count > 0 Then 
      Dim TmpEmail As String = DT.Rows(0).Item("email").ToString 

      Dim mail As New MailMessage() 
      Dim SmtpClient As New SmtpClient("webmail.namespace.net") 

      mail.From = New MailAddress("[email protected]") 

      mail.[To].Add(TmpEmail) 
      mail.Subject = " subject" & Subject_EmailType_Max10Char 
      mail.IsBodyHtml = True 
      mail.Body = BodyHtml 

      SmtpClient.Port = 25 

      SmtpClient.DeliveryMethod = SmtpDeliveryMethod.Network 
      SmtpClient.UseDefaultCredentials = False 
      SmtpClient.Credentials = New System.Net.NetworkCredential("[email protected]", "########password") 
      SmtpClient.EnableSsl = True 
      SmtpClient.Timeout = 200000 
      SmtpClient.Send(mail) 

当我发送邮件到我的网络的同一个域的邮件发送成功,但是当我发送邮件到Gmail的错误MailBox unavailable. The server response was: 5.7.1 Unable to relay时会出现发送电子邮件。当我从我的电子邮件发送(从展望)到外部域没有问题。 我使用框架4.5视觉工作室2012. 我谷歌它,并找到像configured SMTP server解决方案,但我不想安装IIS6。我想在本地检查它。任何想法?

我也用我的Gmail作为mail.From和SmtpClient.Credentials设置我的Gmail和密码,并设置SmtpClient.Port = 587Dim SmtpClient As New SmtpClient("smtp.gmail.com")和发送电子邮件到Gmail帐户的问题仍然是same.The误差发送邮件失败。

+0

这是服务器配置,“webmail.comsec.gov.iq”的管理员应启用中继发送。 你无法在c#代码中启用它的客户端。 – bradbury9

+0

@ bradbury9但是当我从Outlook发送电子邮件到外部域名时没有问题。管理员说中继发送已启用。 – Question

+0

我迄今为止所经历的中继消息可能会在以下情况下引发:a)您未通过电子邮件服务器的身份验证。大多数服务器只允许中继**适当的**认证请求。 a)电子邮件服务器不允许中继。 – bradbury9

回答

0

我在question上试过了几个答案,我更换了3次密码,它们都很强大。最后它在第三次更改密码时起作用。我应该提及它在我的本地主机中不起作用,但它在我将它发布到外部服务器(托管)时起作用。

相关问题