C# net.mail和web.mail与gmail

C# net.mail和web.mail与gmail,c#,email,C#,Email,我想知道,我是否可以使用465端口的System.Net.Mail和587端口的System.Web.Mail。例如,对于gmail,我不能在这个例子中切换端口,因为它会引发传输协议异常 using web = System.Web.Mail; using net = System.Net.Mail; private void SendMail() { web.MailMessage webMail = new web.MailMessage(); webMail.To = "

我想知道,我是否可以使用465端口的
System.Net.Mail
和587端口的
System.Web.Mail
。例如,对于gmail,我不能在这个例子中切换端口,因为它会引发传输协议异常

using web = System.Web.Mail;
using net = System.Net.Mail;

private void SendMail()
{
    web.MailMessage webMail = new web.MailMessage();
    webMail.To = "MAILTO@gmail.com";
    webMail.From = "MAILFROM@gmail.com";

    webMail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusing", "2");
    webMail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpusessl", "true");            
    webMail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", "1");
    webMail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername", "LOGIN");
    webMail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword", "PASSWORD");
    webMail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpserverport", 465);
    web.SmtpMail.SmtpServer = "smtp.gmail.com";
    web.SmtpMail.Send(webMail);

    net.SmtpClient smtp = new net.SmtpClient();
    smtp.UseDefaultCredentials = false;
    smtp.Credentials = new System.Net.NetworkCredential("LOGIN", "PASSWORD");
    smtp.Port = 587;
    smtp.Host = "smtp.gmail.com";
    smtp.EnableSsl = true;

    var netMail = new net.MailMessage(new net.MailAddress("MAILFROM@gmail.com", "", System.Text.Encoding.UTF8),
                                      new net.MailAddress("MAILTO@gmail.com", "", System.Text.Encoding.UTF8));

    smtp.Send(netMail); 
}

我这样问是因为在.Net 2.0版本中,即使是最简单的第二个
Net.Mail
也无法在俄语Win 7 64x下发送-它会引发关于标头中无效字符的异常。。。我们的邮件工作正常。但是我不想用它…

我想你指的是SMTP,不是pop。Pop用于检索邮件,SMTP发送。是的,当然,感谢您的指点。您避免System.Web.Mail是正确的-它已经过时,并且基于一个最脆弱的古老COM组件。您是否尝试过在
邮件
上设置
标题编码
属性?不幸的是,在.NET2.0中没有HeadersEncoding属性,设置主题和正文编码也无济于事。