【发布时间】:2012-03-17 07:44:01
【问题描述】:
我知道这个问题已经被问过好几次了,但是,在研究了过去一个半小时的问题并且没有找到任何解决方案之后,我陷入了死胡同。这些问题中的大多数也涉及 Window Server 2000 / Exchange 2003 / IIS 6.0
这是代码:
var mail = new MailMessage();
mail.From = new MailAddress("Administrator@$#@!.com");
mail.To.Add(to);
mail.Subject = subject;
var plainView = AlternateView.CreateAlternateViewFromString(body, null, "text/plain");
var htmlView = AlternateView.CreateAlternateViewFromString(body + "<img style=\"text-align: center;\" src=cid:companylogo><br/>", null, "text/html");
ServicePointManager.ServerCertificateValidationCallback = delegate(object s, X509Certificate certificate, X509Chain chain, SslPolicyErrors sslPolicyErrors) { return true; };
var path = Server.MapPath(@"logo.jpg");
var logo = new LinkedResource(path) {ContentId = "companylogo"};
htmlView.LinkedResources.Add(logo);
mail.AlternateViews.Add(plainView);
mail.AlternateViews.Add(htmlView);
var smtpClient = new SmtpClient();
smtpClient.EnableSsl = true;
System.Net.NetworkCredential("Administrator@$#@!.com", "!@#$%^");
smtpClient.Send(mail);
我也尝试在 web.config 中进行身份验证
<smtp>
<network host="192.000.0.001"
userName="administrator@%^##.com"
password="!@#$%^" port="25" />
</smtp>
SBS 2008 交换 2007 IIS 7 SP2
我在 IIS SMTP 电子邮件设置和 Exchange 发送连接器中尝试了不同的设置。
我注意到其他一些帖子提到使用 IIS 6 管理器更改 SMTP 虚拟设置,但是我无法在 IIS 6 中查看这些设置。例如。 Related Question
我知道这不是一个可以直接回答的问题,但是,任何关于我如何有效解决此问题的意见。
【问题讨论】:
-
我认为问题与您的代码无关。这更有可能是 Exchange Server 上的配置问题。奇怪的是,它抱怨
administrator@dasdas.com无权以administrator@dasdas.com发送电子邮件。我会尝试使用您自己的凭据,看看是否发送了电子邮件。 -
@Icarus 是的,这也是我什至无法在域内发送的难点,我还没有遇到尝试发送域外的障碍。我知道这最终归结为交换的一些问题,虽然我对 2003 年有所了解,但 2007 年是另一头野兽。