FallenPuppet 2016-07-06 08:01
浏览 2625
已结题

Exchange 邮箱服务器某些账号发送邮件总是被自动锁住,导致无法发送成功

是用C#开发的邮件发送功能总是出现如下错误“The request failed. 远程服务器返回错误: (401) 未经授权”
代码如下:

 public class ExchangeEmail
    {
        public ExchangeService service;
        public ExchangeEmail()
        {
            service = new ExchangeService(ExchangeVersion.Exchange2010);
            service.Credentials = new WebCredentials("mailAddress", "PWD", "Domain");
            service.Url = new Uri("https://domain/ews/exchange.asmx");
            service.TraceEnabled = true;
            service.TraceFlags = TraceFlags.All;

        }
        Logger log = new Logger();
        public bool SendEmail(string SendTo, string EmailSubject, string EmailBody, string CCTo = "", string AttachmentName = "", byte[] AttachStream = null)
        {
            EmailMessage email = new EmailMessage(service);
            try
            {
                if (SendTo.IndexOf(";") > 0)
                {
                    string[] EmailArray = SendTo.Split(';');
                    foreach (string item in EmailArray)
                    {
                        email.ToRecipients.Add(item.TrimEnd().TrimStart());
                    }
                }
                else
                {
                    email.ToRecipients.Add(SendTo.TrimEnd().TrimStart());
                }
                if (CCTo != "")
                {
                    if (CCTo.IndexOf(";") > 0)
                    {
                        string[] EmailArray = CCTo.Split(';');
                        foreach (string item in EmailArray)
                        {
                            email.ToRecipients.Add(item.TrimEnd().TrimStart());
                        }
                    }
                    else
                    {
                        email.CcRecipients.Add(CCTo.TrimEnd().TrimStart());
                    }
                    log.Log("Add CC Recipient " + CCTo + "  Successfully");
                }
                if (AttachmentName != "" && AttachStream != null)
                {
                    email.Attachments.AddFileAttachment(AttachmentName, AttachStream);
                }
                email.Subject = EmailSubject;
                email.Body = new MessageBody(EmailBody);
                email.Body.BodyType = BodyType.HTML;
                email.Send();
                return true;
            }
            catch (Exception)
            {
                return false;
            }
            finally
            {
                email.ToRecipients.Clear();
                email.CcRecipients.Clear();
                email.BccRecipients.Clear();
            }
        }
    }

当执行完方法之后 再进入服务器上查看对应的账号状态会发现状态如下图:
锁定状态
正常情况下 状态如下:
正常状态
谁知道这是什么原因造成的??请大神给予指导,谢谢。

  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 求解答一道线性规划题,用lingo编程运行,第一问要求写出数学模型和lingo语言编程模型,第二问第三问解答就行,我的ddl要到了谁来求了
    • ¥50 树莓派安卓APK系统签名
    • ¥15 maple软件,用solve求反函数出现rootof,怎么办?
    • ¥65 汇编语言除法溢出问题
    • ¥15 Visual Studio问题
    • ¥20 求一个html代码,有偿
    • ¥100 关于使用MATLAB中copularnd函数的问题
    • ¥20 在虚拟机的pycharm上
    • ¥15 jupyterthemes 设置完毕后没有效果
    • ¥15 matlab图像高斯低通滤波