【发布时间】:2011-01-08 06:31:54
【问题描述】:
我有代码,
System.Web.Mail.MailMessage oMailMessage = new MailMessage();
oMailMessage.From = strFromEmaild;
oMailMessage.To = strToEmailId;
oMailMessage.Subject = strSubject;
oMailMessage.Body = strBody;
SmtpMail.SmtpServer = "localhost";
SmtpMail.Send(oMailMessage);
(所有变量都有值)
我已经安装了 SMTP 虚拟服务。为什么它无法发送电子邮件。为什么它不起作用??
编辑
public bool SendMail(string strToEmailId, string strFromEmaild, string strSubject, string strBody)
{
try
{
System.Web.Mail.MailMessage oMailMessage = new MailMessage();
oMailMessage.From = strFromEmaild;
oMailMessage.To = strToEmailId;
oMailMessage.Subject = strSubject;
oMailMessage.Body = strBody;
SmtpMail.SmtpServer = "SERVERNAME";
SmtpMail.Send(oMailMessage);
return true;
}
catch (Exception ex)
{
return false;
}
}
我有这个代码。它执行良好并且返回 true,但我没有在收件箱中收到任何电子邮件。
还有什么问题?
在 C:\Inetpub\mailroot\Badmail 的 BadMail 目录中获取一些邮件,也在队列目录中获取一些邮件...这是什么意思..??
我发现邮件只能发送到gmail帐户...为什么会这样?
【问题讨论】:
-
可能是防火墙/防病毒软件阻止了它,从您的机器或服务器,或两者兼而有之。如果您使用相同的参数配置 Outlook,会发生什么?
-
我不认为“localhost”是您的 smtp 服务器的名称
-
您的网络等是否有任何防火墙限制等?
-
这可能会有所帮助:systemwebmail.com/faq/4.4.7.aspx
-
正如我在帖子中所说,死信和队列文件夹中的这些文件中通常会有说明,告诉您为什么没有发送它们。也许发布您发现的内容,我们可以更准确地为您提供帮助..