3

5.2.0 STOREDRV.Submission.Exception:SendAsDeniedException.MapiExceptionSendAsDenied;由于消息无法提交消息的永久异常,无法处理消息。

我有一个带有表单的联系页面的 ASP.NET Web 应用程序。在我更换主机之前一切都很好。例如,如果我将主机更改为smtp.live.com而不是smtp.gmail.com我收到上面的错误。我的问题是,如果我的主机来自我的 gmail 帐户,它可以正常工作,但如果我更改它,它就不起作用。我已经搜索过其他问题,但它们与我的不同,在 Google 上找不到任何合适的答案。

我的代码如下:

public partial class WebForm2 : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
    }

    protected void btnSend_Click(object sender, EventArgs e)
    {
        MailMessage mm = new MailMessage("sender@hotmail.com", "mymail@hotmail.com");
        mm.Subject = TextBox1.Text;
        mm.Body = "Name: " + txtName.Text + "<br /><br />Email: " + txtEmail.Text + "<br />" + TextBox2.Text;

        if (FileUpload1.HasFile)
        {
            string FileName = System.IO.Path.GetFileName(FileUpload1.PostedFile.FileName);
            mm.Attachments.Add(new Attachment(FileUpload1.PostedFile.InputStream, FileName));
        }

        mm.IsBodyHtml = true;
        SmtpClient smtp = new SmtpClient();
        //smtp.Host = "smtp.gmail.com";
        smtp.Host = "smtp.live.com";
        smtp.EnableSsl = true;
        System.Net.NetworkCredential NetworkCred = new System.Net.NetworkCredential();
        NetworkCred.UserName = "mymail@hotmail.com";
        NetworkCred.Password = "xxxxxxxx";
        smtp.UseDefaultCredentials = false;
        smtp.Credentials = NetworkCred;
        smtp.Port = 587;
        smtp.Send(mm);
        lblMessage.Text = "Email Sent SucessFully.";
    }
}
4

1 回答 1

1

回答:通过这个问题-> PHPMailer .Exception:SendAsDeniedException.MapiExceptionSendAsDenied,我将“sender@hotmail.com”更改为我的另一封邮件并正常工作。

于 2018-05-22T13:34:13.150 回答