通过c# Winforms使用SMTP发送雅虎邮件

本文关键字:雅虎 SMTP Winforms 使用 通过 | 更新日期: 2023-09-27 18:15:17

我使用下面的代码通过Gmail服务器发送一封电子邮件。我想知道的是,为了能够使用我的c# WinForm应用程序从雅虎邮件服务器发送电子邮件,我必须从下面的代码中更改/删除什么。

而且,如果你知道如何使它的性能更快,请让我知道。使用此代码发送电子邮件大约需要20到22秒。谢谢你。

var fromAddress = new MailAddress("sendermail@gmail.com", "Sender name");
var toAddress = new MailAddress("recipientmail@gmail.com", "Recipient name");
const string fromPassword = "mypassword";
const string subject = "Subject";
string body = "E-mail content";
var smtp = new SmtpClient();
{
    smtp.Host = "smtp.gmail.com";
    smtp.Port = 587;
    smtp.EnableSsl = true;
    smtp.DeliveryMethod = SmtpDeliveryMethod.Network;
    smtp.Credentials = new NetworkCredential(fromAddress.Address, fromPassword);
    smtp.Timeout = 20000;
}
using (var message = new MailMessage(fromAddress, toAddress))
{
    message.Subject = subject;
    message.Body = body;
    message.IsBodyHtml = true;
    smtp.Send(message);
}

通过c# Winforms使用SMTP发送雅虎邮件

可能这太简单了,但是雅虎有一个关于使用哪些端口和服务器的文档。

摘录:

Outgoing mail (SMTP) server: smtp.bizmail.yahoo.com
                             Use SSL, port: 465, and use authentication
Account name/user name:      Your Business Email address
                             (such as you@widgetdesigns.com)
Email address:               Your Business Email address
                             (such as you@widgetdesigns.com)
Password:                    Your Business Email password

此位的所有内容都需要更改以反映雅虎的SMTP服务器:

var smtp = new SmtpClient();
{
    smtp.Host = "smtp.gmail.com";
    smtp.Port = 587;
    smtp.EnableSsl = true;
    smtp.DeliveryMethod = SmtpDeliveryMethod.Network;
    smtp.Credentials = new NetworkCredential(fromAddress.Address, fromPassword);
    smtp.Timeout = 20000;
}

你需要改变这些来反映这里的设置。

关于时间,我怀疑任何信誉良好的开放SMTP将提供任何"快速"服务,以防止被用于垃圾邮件。