尝试通过 SMTP 发送邮件。没有邮件到达并且没有异常错误

2024-03-27

问题:制作了一个小型邮件程序,该程序在我的开发人员电脑上完美运行,但在投入生产时却失败了。

protected void Page_Load(object sender, EventArgs e)
{
    string smtpHost = ConfigurationManager.AppSettings["SmtpAddress"];
    MailMessage mail = new MailMessage();
    mail.From = new MailAddress(ConfigurationManager.AppSettings["FromMailAddress"]);
    mail.Sender = new MailAddress(ConfigurationManager.AppSettings["FromMailAddress"]);
    mail.To.Add(new MailAddress("[email protected] /cdn-cgi/l/email-protection"));
    mail.Subject = "Test mail";
    mail.Body = string.Format("Is this mail sent via {0} ?", smtpHost);

    lblMsg2.Text = string.Format("SmtpHost: {0}", smtpHost); ;

    SmtpClient client = new SmtpClient(smtpHost);
    try
    {
        client.Send(mail);
    }
    catch (Exception exception)
    {
        lblMsg3.Text = exception.Message.ToString();
        lblMsg4.Text = exception.InnerException.ToString();
    }
}

我确实获得了正确的邮件地址和生产服务器上的所有内容,但我的电子邮件收件箱中没有任何内容:-(。我没有收到任何异常。

我尝试在同一台服务器上使用 telnet,并且可以从那里发送邮件。

我尝试安装 WireShark,它正在查看服务器上的网卡,当使用 telnet 时,我确实得到了我怀疑的响应,但从我的程序中我没有收到任何信息。

编辑于 2012-03-12 @ 09:46 丹麦时间

现在已将代码更新为如下所示

protected void Page_Load(object sender, EventArgs e) 
{ 
    string smtpHost = ConfigurationManager.AppSettings["SmtpAddress"]; 
    MailMessage mail = new MailMessage(); 
    mail.From = new MailAddress(ConfigurationManager.AppSettings["FromMailAddress"]); 
    mail.Sender = new MailAddress(ConfigurationManager.AppSettings["FromMailAddress"]); 
    mail.To.Add(new MailAddress("[email protected] /cdn-cgi/l/email-protection")); 
    mail.Subject = "Test mail"; 
    mail.Body = string.Format("Is this mail sent via {0} ?", smtpHost); 

    lblMsg2.Text = string.Format("SmtpHost: {0}", smtpHost); ; 

    SmtpClient client = new SmtpClient(smtpHost); 

    client.Send(mail); 
} 

非常有趣的是:即使插入肯定不存在的 SMTP 服务器,我在生产环境中仍然没有收到任何错误。我确实在我的开发人员电脑上遇到了异常,这基本上意味着 smtp 服务器不存在(我也希望收到相关消息)。


案件已解决:-)

我对 IIS 有了更多的了解!

IIS 设置为“将电子邮件存储在分拣目录中”而不是“将电子邮件传送到 SMTP 服务器”。不幸的是,我不太擅长 IIS,而且我不知道有这样的设置......我现在就是了!

不幸的是,@GarryM 的“仔细检查配置设置”不足以让我或我的邮件管理员查看 IIS。我太像个程序员了,而我的邮件管理员太像个网络人了:-)

谢谢大家的回答。部分原因是由于您的所有良好提示和想法,我可以省略越来越多的部分。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

尝试通过 SMTP 发送邮件。没有邮件到达并且没有异常错误 的相关文章

随机推荐