【发布时间】:2013-09-30 01:36:23
【问题描述】:
这对你来说可能很简单,但我就是想不通为什么我在运行我的代码时会收到这个错误消息。我在同一个网站上查看了一些相关问题,例如Sending email through Gmail SMTP server with C# 但他们都没有帮助。请问有人愿意帮忙吗? 使用不同的组件也是可以接受的。因此,如果有人得到一个可行的解决方案,将不胜感激。
错误消息 = SMTP 服务器需要安全连接或客户端未通过身份验证。服务器响应为:5.5.1 需要身份验证。了解更多信息,请访问
这是我的代码
System.Net.Mail.MailMessage message = new System.Net.Mail.MailMessage();
message.From = new MailAddress("bob@googlemail.com");
message.To.Add("bob@hotmail.com");
message.Subject = "Hello";
message.Body = "Hello Bob ";
message.DeliveryNotificationOptions = DeliveryNotificationOptions.OnFailure;
SmtpClient smtpClient = new SmtpClient("smtp.gmail.com", 587);
smtpClient.EnableSsl = true;
smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network;
smtpClient.UseDefaultCredentials = false;
smtpClient.Credentials = new NetworkCredential("MyGoogleMailAccount",
"mygooglemailpassword");
smtpClient.Send(message.From.ToString(), message.To.ToString(),
message.Subject, message.Body);
【问题讨论】:
-
顺便说一句,如果您使用来自地址的 hotmail,gmail 可能会抱怨。
-
嗨,史蒂夫,我想使用 googlemail 来发送电子邮件,但它应该就像是从 hotmail 发送的一样。我在这里错过了什么吗?嗨皮特,我已经看到该链接没有解决我的问题
-
这是一个非常复杂的问题,因为谷歌添加了一些安全层来防止黑客。登录您的谷歌帐户,您很可能会看到警报!如果是这样,请单击它并按照说明进行操作!
-
您是否考虑使用另一个组件来完成相同的工作?在使用 System.Net.Mail 的许多解决方案失败后,我使用了另一个程序集并为我解决了这个问题。如果你想要它,请编辑你的问题并指定其他组件是可以接受的。
标签: c# .net web smtp smtpclient