C# 邮箱不可用。服务器响应为:5.7.1客户端没有作为此发件人发送的权限

C# 邮箱不可用。服务器响应为:5.7.1客户端没有作为此发件人发送的权限,c#,asp.net,email,iis,C#,Asp.net,Email,Iis,我知道这个问题已经被问过好几次了,然而,在经过一个半小时的钻研,并没有找到任何解决方案之后,我已经有点走不通了。此外,这些问题大多涉及Windows Server 2000/Exchange 2003/IIS 6.0 代码如下: var mail = new MailMessage(); mail.From = new MailAddress("Administrator@$#@!.com"); mail.To.Add(to); mail.Subject =

我知道这个问题已经被问过好几次了,然而,在经过一个半小时的钻研,并没有找到任何解决方案之后,我已经有点走不通了。此外,这些问题大多涉及Windows 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);
var-mail=new-MailMessage();
mail.From=新邮件地址(“管理员@$#@!.com”);
mail.To.Add(To);
mail.Subject=主题;
var plainView=AlternateView.CreateAlternateViewFromString(body,null,“text/plain”);
var htmlView=AlternateView.CreateAlternateViewFromString(body+“
”,null,“text/html”); ServicePointManager.ServerCertificateValidationCallback=委托(对象s、X509Certificate证书、X509Chain链、SslPolicyErrors SslPolicyErrors){return true;}; var path=Server.MapPath(@“logo.jpg”); var logo=newLinkedResource(路径){ContentId=“companylogo”}; htmlView.LinkedResources.Add(logo); mail.AlternateViews.Add(plainView); mail.AlternateViews.Add(htmlView); var smtpClient=新的smtpClient(); smtpClient.EnableSsl=true; System.Net.NetworkCredential(“管理员$#@!.com”,“!@$$%”); 发送(邮件);
我也尝试过在web.config中进行身份验证

  <smtp>
    <network host="192.000.0.001"
             userName="administrator@%^##.com"
             password="!@#$%^" port="25" />
  </smtp>

SBS 2008 Exchange 2007 IIS 7 SP2

我在IIS SMTP电子邮件设置和Exchange发送连接器中尝试了不同的设置

我注意到其他一些帖子提到使用IIS 6管理器更改SMTP虚拟设置,但是我无法在IIS 6中查看这些设置。前


我知道这不是一个可以直接回答的问题,但是,关于如何有效地解决此问题的任何输入。

我最终发现,这一问题的答案与exchange服务器的设置方式有关。SMTP对任何帐户都不起作用,但是当我删除帐户并重新创建它时,问题就解决了。我认为这与执行不好的导入有关。

我最终发现答案与exchange服务器的设置有关。SMTP对任何帐户都不起作用,但是当我删除帐户并重新创建它时,问题就解决了。我认为这与执行错误的导入有关。

我认为问题与您的代码无关。这很可能是Exchange服务器上的配置问题。奇怪的是它抱怨
administrator@dasdas.com
无权以
administrator@dasdas.com
。我会尝试使用您自己的凭据,看看是否发送电子邮件。@Icarus是的,这也是我无法在域内发送的问题,我还没有遇到尝试发送到域外的障碍。我知道这最终归结为exchange的一些问题,虽然我对2003有一定的了解,但2007是一个不同的野兽。我不认为这个问题与您的代码有任何关系。这很可能是Exchange服务器上的配置问题。奇怪的是它抱怨
administrator@dasdas.com
无权以
administrator@dasdas.com
。我会尝试使用您自己的凭据,看看是否发送电子邮件。@Icarus是的,这也是我无法在域内发送的问题,我还没有遇到尝试发送到域外的障碍。我知道这最终归结为exchange的一些问题,虽然我对2003年有所了解,但2007年是一个不同的时代。