Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/9.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
C# 通过gmail以外的其他主机发送电子邮件_C#_Email_Smtp_Smtpclient - Fatal编程技术网

C# 通过gmail以外的其他主机发送电子邮件

C# 通过gmail以外的其他主机发送电子邮件,c#,email,smtp,smtpclient,C#,Email,Smtp,Smtpclient,我目前正在用c#开发一个应用程序,我想从一个名为“smtp.online.nl”的smtp主机发送一封电子邮件。我使用的是485端口(正如我在他们的教程中看到的,如何配置邮件客户端),一切似乎都是正确的 这是我的密码: MailMessage message = new MailMessage(); message.To.Add("testEmail@hotmail.com"); message.Subject = "C# generated me

我目前正在用c#开发一个应用程序,我想从一个名为“smtp.online.nl”的smtp主机发送一封电子邮件。我使用的是485端口(正如我在他们的教程中看到的,如何配置邮件客户端),一切似乎都是正确的

这是我的密码:

        MailMessage message = new MailMessage();
        message.To.Add("testEmail@hotmail.com");
        message.Subject = "C# generated message!";
        message.From = new MailAddress("mySendemailAddress@online.nl");
        message.Body = "This is the message body \r\nThis is a next line";
        message.DeliveryNotificationOptions=DeliveryNotificationOptions.OnFailure;
        SmtpClient smtp = new SmtpClient("smtp.online.nl", 485);
        smtp.EnableSsl = true;
        smtp.UseDefaultCredentials = false;
        smtp.Credentials=new NetworkCredential("mySendEmailAddress@online.nl", "password");

        smtp.Send(message);
当我运行此操作时,电子邮件将不会被发送,我得到一个
SmtpException:“发送电子邮件时出错”。


我的问题:我的代码有什么问题吗?还有什么其他想法可以解释为什么我会出现这个错误吗?

将SMTP端口更改为25(标准SMTP端口)完成了这项工作。感谢Luke Park。

像这样的SMTP问题往往与服务器有关,而不是与代码有关。你试过多个用户名吗?例如,使用和不使用@online.nl。您确定服务器使用SSL吗?谢谢您的评论,是的,我在网络凭据中没有@online.nl的情况下尝试过它。关于SSL:教程中说:“选中服务器上显示需要SSL接收电子邮件的复选框”。我在我的代码中启用了一个禁用的选项:很遗憾没有效果。联系提供网络邮件的公司是个好主意吗?您是否尝试过禁用SSL并将端口更改为标准SMTP端口(25)?成功了!谢谢你,伙计!