我需要使用NTLM发送电子邮件,目前,我正在使用以下代码发送电子邮件
SmtpClient objSmtpClient;
System.Net.NetworkCredential objNetworkCredential;
objSmtpClient = new SmtpClient("10.xxx.xxx.xxx", 587);
objSmtpClient.EnableSsl = true;
objNetworkCredential = new System.Net.NetworkCredential(userName, password);
try
{
string to = txtto.Text;
MailMessage objMailMessage = new MailMessage();
objMailMessage.From = new MailAddress("from@email.com", "sendername");
objMailMessage.To.Add(new MailAddress("to@email.com"));
objMailMessage.Subject = "subject";
objMailMessage.Body = "body";
objMailMessage.IsBodyHtml = true;
objSmtpClient.EnableSsl = true;
objSmtpClient.UseDefaultCredentials = true;
objSmtpClient.Credentials = objNetworkCredential;
objSmtpClient.Send(objMailMessage);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message + " INNER EXCEPTION > "+ex.InnerException +" DATA > "+ex.Data);
}
如果我尝试将端口更改为25并将EnableSSL设置为false,则上述代码将起作用,但是当我尝试使用587发送并将EnableSSL设置为true时,它将无效。
我遇到以下错误,有时会收到无效的证书错误。
SMTP服务器需要安全连接,或者客户端未通过身份验证。服务器响应为:5.7.1客户端未通过身份验证。
我也收到此错误
我与IT团队进行了交谈,他们在我的电脑上安装了一个工具来检查电子邮件,并使用该工具成功发送了电子邮件。
以下是他在该工具中应用的设置
有人可以帮忙吗
答案 0 :(得分:0)
我正在测试,我遇到了同样的问题,我通过禁用SSL安全性对其进行了修复
SC.EnableSsl = false;