我正在尝试使用C#中的SMTPClient发送邮件。
使用我的Gmail帐户发送邮件时,一切都很顺利
使用HOSTNAME: smtp.gmail.com
和PORT NUMBER: 587
。
以下是我使用的代码:
MailMessage mail = new MailMessage();
SmtpClient SmtpServer = new SmtpClient("smtp.gmail.com",587)
//mail
mail.From = new MailAddress("someone@mydomain.com","myself");
mail.To.Add("itsme@gmail.com");
mail.Subject = "Test Mail C#";
mail.Body = "Hello";
mail.IsBodyHtml = true;
//smtpclient
SmtpServer.Port = 587;
SmtpServer.EnableSsl = true;
SmtpServer.Credentials = new System.Net.NetworkCredential("someone@mydomain.com", "password");
Boolean MailSent=true;
try
{
SmtpServer.Send(mail);
}
catch (SmtpException ex)
{
MessageBox.Show(ex.Message);
MailSent = false;
}
finally
{
if (MailSent == true)
MessageBox.Show("mail sent");
else
MessageBox.Show("Failed to send mail");
}
以下是托管服务提供商提供的详细信息:
安全SSL / TLS设置(推荐)
用户名:someone@opastonline.com
密码:使用电子邮件帐户的密码
传入服务器:mocha7004.mochahost.com
IMAP港口:993
POP3端口:995
发送服务器:mocha7004.mochahost.com
SMTP端口:465
IMAP,POP3和SMTP需要身份验证。
非SSL设置
(不建议这样做。)
用户名:someone@opastonline.com
密码:使用电子邮件帐户的密码
传入服务器:mail.opastonline.com
IMAP港口:143
POP3端口:110
发送服务器:mail.opastonline.com
SMTP端口:25 - >当他们上票时,他们还建议我使用2525或25
IMAP,POP3和SMTP需要身份验证。
但是当我使用主机提供商提供的详细信息替换它们时,我无法推送邮件。
当我更改端口号(我是由提供商提供)时,它会显示不同的错误消息:
我交叉检查了所有可能的事情,但似乎我在某处失去了。
答案 0 :(得分:0)
转到以下链接https://www.google.com/settings/security/lesssecureapps的安全设置,启用安全性较低的应用。这样您就可以从所有应用程序登录。