【发布时间】:2014-02-21 21:38:58
【问题描述】:
我正在尝试使用 gmail smtp 通过代码发送电子邮件,但是它不会发送给用户。发送的电子邮件确实位于“已发送电子邮件”文件夹中,格式正确。我尝试定期发送电子邮件,看看它是否可能是电子邮件地址,但一切都发送正常。我不确定为什么这不起作用...任何想法都会受到赞赏。
代码:
//this will build the email and send it
public void sendEmail()
{
var client = new SmtpClient("smtp.gmail.com", 587)
{
Credentials = new NetworkCredential(GlobalVars.strFromEmail, "pass"),
EnableSsl = true
};
client.Send(GlobalVars.strFromEmail,GlobalVars.strEmailAddress, "test", "testbody");
Console.WriteLine("Sent");
Console.ReadLine();
}
已修复:没关系,只是发送需要很长时间(比如一个小时)...
【问题讨论】:
-
也许您的发件人地址不是您自己的 gmail 地址,而 google 会阻止发送来自不同发件人的邮件以避免垃圾邮件?
-
尝试创建第二个 gmail 电子邮件地址,将电子邮件发送到新帐户。如果在新帐户中收到电子邮件,那么有几件事可能会导致这种情况。首先是两个电子邮件提供商之间的滞后。第二个可能是您尝试发送到的电子邮件地址。第三个可能是预期的电子邮件服务提供商阻止了 Gmail(这并不罕见,因为防火墙会在发生垃圾邮件泛滥的情况下自动阻止提供商)。
-
众所周知,像 McAfee 这样的防病毒程序会阻止电子邮件。这通常是端口 25,但之前我必须禁用 McAfee Enterprise onaccess 扫描程序才能使其正常工作。