发送电子邮件system.web.httpexceptions时出错:无法将邮件发送到smtp服务器

本文关键字:服务器 smtp system 电子邮件 web httpexceptions 出错 | 更新日期: 2023-09-27 18:30:12

我的程序中有一个函数,可以从谷歌帐户发送电子邮件。

我以前写过这个代码,它过去工作得很好,它按预期发送电子邮件。然而,现在,我无法让它工作。(我现在使用的是Windows7 64位,如果这能有所不同的话)。

我得到的错误(这是代码中的第一条错误消息)是:

system.web.httpexceptions:消息无法发送到smtp服务器传输错误代码为0x80040217。服务器响应不可用-->system.reflection.targetinvocationexception:调用的目标引发了异常。-->system.runtime.interopservice.comexception(0x80040211):消息无法发送到smtp服务器。传输错误代码为0x80040217。服务器响应不可用。

这是代码:

void sendEmail(string [] emailList, int emailLength, string fileName)
{
    int i = 0;      //variable to act as temporary index into emailList array
    try
    {
        try
        {
            MailMessage message = new MailMessage();
        //Because using google server, requires SSL
            message.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpusessl", "true");
            message.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpserverport", "465");
            message.Fields.Add( "http://schemas.microsoft.com/cdo/configuration/smtpauthenticate",1 );
            message.Fields.Add( "http://schemas.microsoft.com/cdo/configuration/sendusername","theusername@gmail.com" );
            message.Fields.Add( "http://schemas.microsoft.com/cdo/configuration/sendpassword","thepassword" );
            message.From = "theusername@gmail.com";
            message.To = emailList[i];
            //add Bcc
            while (++i < emailLength)
            {
                message.Bcc = emailList[i];
            }//end while
            message.Subject = "Test Subject";
            message.Body = "Test Body";
            MailAttachment fileAttach = new MailAttachment(fileName);
            message.Attachments.Add(fileAttach);
            try
            {       
                SmtpMail.SmtpServer = "smtp.gmail.com";

提前谢谢!

发送电子邮件system.web.httpexceptions时出错:无法将邮件发送到smtp服务器

我也遇到了同样的问题,但当我使用Gmail地址时解决了这个问题,因为我没有使用Gmail登录的两步验证。如果你只使用一个没有额外验证的密码(在我的情况下是通过手机代码),它可以使用

也许你被谷歌屏蔽了,因为你是从远程计算机中的程序发送的(这不是你通常使用的程序)尝试在运行该程序的同一台计算机上打开gmail。,看看你是否有安全问题。

在gmail帐户上转到https://www.google.com/settings/account然后打开安全,看到我gmail阻止了对你的账户的访问