2

電子メールを送信するための私のコードは、psat の 2 週間で正しく機能していました。しかし、今では次のようなエラーが表示されます

メールの送信に失敗しました。

なぜこの問題が発生したのかわかりません。先週いくつかの新しいファイアウォール ポリシーが導入されましたが、これが原因で問題が発生したのでしょうか? 私は何をすべきか?

これが私のコードです:

 protected void Button1_Click(object sender, EventArgs e)
    {
        try
        {
            if (TextBox1.Text == "")
            {

                string alertmessage = "";
                alertmessage = "Email ID. cannot be blank ";
                this.CreateMessageAlert(this, alertmessage, "alertKey");
                TextBox1.Focus();
            }
            else if (TextBox2.Text == "")
            {

                string alertmessage = "";
                alertmessage = "CC To cannot be blank ";
                this.CreateMessageAlert(this, alertmessage, "alertKey");
                TextBox2.Focus();
            }
            else if (TextBox3.Text == "")
            {

                string alertmessage = "";
                alertmessage = "Subject cannot be blank ";
                this.CreateMessageAlert(this, alertmessage, "alertKey");
                TextBox3.Focus();
            }
            else if (TextBox4.Text == "")
            {

                string alertmessage = "";
                alertmessage = "Message Body cannot be blank ";
                this.CreateMessageAlert(this, alertmessage, "alertKey");
                TextBox4.Focus();
            }
            //else if (upSignature.FileName == "")
            //{
            //    ctr = 1;
            //    string alertmessage = "";
            //    alertmessage = "Attachment  Missing...";
            //    this.CreateMessageAlert(this, alertmessage, "alertKey");
            //    upSignature.Focus();
            //}

            else
            {


                string photo = "Enquiry" + Session["MRNO"].ToString() + FileUpload1.FileName;
                string strpath = Request.MapPath("~/");
                FileUpload1.SaveAs(strpath + "/Enquiry/" + photo);


                try
                {
                    MailMessage mail = new MailMessage();
                    mail.To.Add(new MailAddress(TextBox1.Text.Trim()));
                    mail.From = new MailAddress("XXXXXXX");
                    mail.Subject = "Enquiry for MRNO " + " " + " " + Session["MRNO"].ToString() + " " + " " + "Reg.";
                    mail.CC.Add(TextBox2.Text.Trim());
                    mail.Body = TextBox4.Text.Trim();

                        mail.Attachments.Add(new Attachment(FileUpload1.PostedFile.InputStream, FileUpload1.FileName));
                        mail.Attachments.Add(new Attachment(FileUpload2.PostedFile.InputStream, FileUpload2.FileName));

                    //Attachment attach = new Attachment(strpath + "/Enquiry/" + photo);
                    //mail.Attachments.Add(attach);


                    SmtpClient smtp = new SmtpClient("smtp.gmail.com", 587);

                    smtp.EnableSsl = true;

                    smtp.UseDefaultCredentials = false;
                    smtp.Credentials = new NetworkCredential("XXXXXX", "XXXXXXX");

                    smtp.Send(mail);

                    string alertmessage = "";
                    alertmessage = "Mail Has Been Sent";
                    this.CreateMessageAlert(this, alertmessage, "alertKey");


                    //   Page.RegisterStartupScript("close", "<script language=javascript>self.close();</script>");

                }
                catch (Exception ex)
                {
                    Response.Write(ex.Message);
                }
            }
        }
        catch (Exception ex1)
        {
            Response.Write(ex1.Message);
        }

    }
4

1 に答える 1

1

メールを送信するには、ポート 587 を開く必要があります。これについてネットワークチームに確認し、開いていることを確認してください

于 2012-08-27T06:10:14.060 に答える