C#smtp停止工作,但在另一台计算机上工作
我的c#程序正在发送一封电子邮件,它突然开始收到以下错误 服务器响应为:5.7.1客户端未通过身份验证 在另一台计算机上,我使用visual studio 2013(在两台计算机上)在同一个域中运行相同的代码,以同一用户的身份登录,并且运行良好。这封电子邮件在过去3天一直运行良好,但突然停止工作。我做了明显的,重新启动等。电子邮件管理员说没有任何错误或更改。有人有线索吗?代码如下C#smtp停止工作,但在另一台计算机上工作,c#,email,C#,Email,我的c#程序正在发送一封电子邮件,它突然开始收到以下错误 服务器响应为:5.7.1客户端未通过身份验证 在另一台计算机上,我使用visual studio 2013(在两台计算机上)在同一个域中运行相同的代码,以同一用户的身份登录,并且运行良好。这封电子邮件在过去3天一直运行良好,但突然停止工作。我做了明显的,重新启动等。电子邮件管理员说没有任何错误或更改。有人有线索吗?代码如下 MailMessage errorEmail = new MailMessage();
MailMessage errorEmail = new MailMessage();
SmtpClient SmtpServer = new SmtpClient("relay.xxxx.com");
errorEmail.From = new MailAddress("ARExportProgram@xxx.com");
SmtpServer.UseDefaultCredentials = false;
foreach (var address in Properties.Settings.Default.monitorEmails.
Split(new[] { ";" }, StringSplitOptions.RemoveEmptyEntries))
{
errorEmail.To.Add(address);
}
errorEmail.Subject = "ARExport Program Error";
errorEmail.Body = "my message";
SmtpServer.Send(errorEmail);
我的猜测是,问题不在于这段代码,而在于它运行的上下文。某处发生了变化。您正在匿名发送-您是否尝试附加凭据?不要相信管理员。通常在公司网络上,UseDefaultCredentials=false不起作用。您需要通过一个代理服务器,该代理服务器无法识别未存储在电脑上的凭据。如果凭据为true,则作为Outlook安装程序的一部分存储在电脑上的用户名和密码将正常工作。我确实尝试添加凭据,但无效。今天早上一切又恢复正常了,所以我认为“不要相信管理员”是个好建议。谢谢你的推荐。