Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/280.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用带有用户名密码身份验证的smtp服务器发送电子邮件C#_C#_Smtp_Sendmail_Smtpclient - Fatal编程技术网

使用带有用户名密码身份验证的smtp服务器发送电子邮件C#

使用带有用户名密码身份验证的smtp服务器发送电子邮件C#,c#,smtp,sendmail,smtpclient,C#,Smtp,Sendmail,Smtpclient,我有一段发送电子邮件的代码。。这是密码 这对我不起作用。这是一个远程smtp服务。。。我仔细检查了邮件网络访问是否正常。。我可以使用gui登录,接收和发送电子邮件 但是当我试图通过代码来实现它时。。它将失败,并显示消息 {System.Net.Mail.SmtpException:SMTP服务器需要安全连接,或者客户端未经过身份验证。服务器响应为:5.7.0未发出AUTH命令 任何人都可以建议…而且他们没有暴露EWS的ie exchange web服务。/…这是一条路 端口为25,无SSL或TL

我有一段发送电子邮件的代码。。这是密码

这对我不起作用。这是一个远程smtp服务。。。我仔细检查了邮件网络访问是否正常。。我可以使用gui登录,接收和发送电子邮件

但是当我试图通过代码来实现它时。。它将失败,并显示消息

{System.Net.Mail.SmtpException:SMTP服务器需要安全连接,或者客户端未经过身份验证。服务器响应为:5.7.0未发出AUTH命令

任何人都可以建议…而且他们没有暴露EWS的ie exchange web服务。/…这是一条路

端口为25,无SSL或TLS

Button b = sender as Button;
try
{
    MailMessage msg = new MailMessage(senderEmail, recieverEmail, "afdasfas", "safasfa");
    //MailMessage msg = new MailMessage(senderEmail, recieverEmail, subject, subject);
    System.Net.Mail.SmtpClient mailclient = new System.Net.Mail.SmtpClient(EmailSmtpServer, outgoingPort);
    System.Net.NetworkCredential auth = new System.Net.NetworkCredential(senderEmail, senderPassword);
    mailclient.Host = EmailSmtpServer;
    mailclient.UseDefaultCredentials = false;
    mailclient.Credentials = auth;
    mailclient.Send(msg);
    MessageBox.Show(b.Content + ":WORKED");
}
catch (Exception e4)
{
    MessageBox.Show(b.Content + ": " +e4.Message);
    MessageBox.Show(b.Content + ": " + e4.StackTrace);
}

我想你不想去

mailclient.UseDefaultCredentials = true;
了解有关此选项的更多信息


您还应该测试您是否可以通过smtp服务器发送电子邮件


尝试通过telnet连接并授权。还有很多服务可以让您在线发送测试消息(例如).

可能需要添加
mailclient.enablesssl=true;
System.Net.Mail.SmtpException:SMTP服务器需要安全连接或客户端未经身份验证。服务器响应为:5.7.0未发出身份验证命令。


您试图在不发送AUTH命令的情况下登录。这就是为什么您的web gui可以自动插入自己的AUTH命令,但您当前的客户端应用程序没有收到您发送的中继到服务器的命令,但服务器需要身份验证的原因。您可以将你在代码块中的代码?使它更易于阅读。不..很抱歉,这是一个打字错误..我尝试了所有选项..我将编辑文章…我在尝试运行代码时遇到此异常{System.Net.Mail.SmtpException:SMTP服务器需要安全连接,或者客户端未经过身份验证。服务器响应为:5.7.0未发出AUTH命令。在System.Net.Mail.MailCommand.CheckResponse(SmtpStatusCode statusCode,String response)我可以远程登录到远程smtp服务…当我使用auth login,然后提供base64格式的用户名和密码时,我可以登录…所以我猜问题出在C#代码中…sendMail不发送“auth login”命令或不在base64中发送用户名/密码…您认为您可以将我指向已更正此问题的博客/站点吗…我尝试了一系列,但对我无效…谢谢。@KK,您的代码看起来不错。您是否以明文形式将用户名和密码传递给NetworkCredential构造函数?我将其作为base64传递。我可以写一个C#脚本,做selnet的事情..发送电子邮件..在美国德克萨斯州一切都很好..我所在的州…甚至从我的家庭网络..但当我从哥伦比亚的客户那里运行它时不起作用..不..我很抱歉这是一个打字错误..我尝试了所有的选项..我将编辑帖子..我在尝试运行t时遇到了这个例外代码{System.Net.Mail.SmtpException:SMTP服务器需要安全连接,或者客户端未经过身份验证。服务器响应为:5.7.0未发出身份验证命令。在System.Net.Mail.MailCommand.CheckResponse(SmtpStatusCode statusCode,String response)远程smtp服务不需要启用smtp。我可以远程登录到该远程smtp服务…当我使用auth login,然后提供base64格式的用户名和密码时,我可以登录…因此我猜C#代码中的问题…sendMail不发送“auth login”命令或在base64中不发送用户名/密码…您认为您可以将我指向已更正此问题的博客/网站吗…我尝试了很多,但对我无效…谢谢。