[英]System.Net.Mail Server Response was 5.7.1
我正在为网络非常紧密的学校构建Windows窗体应用程序(这意味着我要为其创建建筑的人必须要求其IT服务来做所有事情)。
此应用程序发送电子邮件,我正在使用System.Net.Mail库来发送电子邮件。
SMTPServer = new SmtpClient("SMTPAddress");
MailMessage mailObj = new MailMessage("admin@xyz.com", emailAddressTo);
mailObj.IsBodyHtml = true;
mailObj.Subject = "Subject";
mailObj.Body = "<h2>Test E-Mail Message from the TSENS</h2>";
SMTPServer.Credentials = new System.Net.NetworkCredential(SMTPUserName, SMTPPassword);
SMTPServer.DeliveryMethod = SmtpDeliveryMethod.Network; //This is new code
SMTPServer.Send(mailObj);
我想知道是否这行: SMTPServer.DeliveryMethod = SmtpDeliveryMethod.Network;
将解决他尝试发送电子邮件时收到的最新错误消息:
还有其他我想念的东西吗?
以防万一您想知道SMTPUserName和Password是他用来发送和接收邮件的电子邮件用户名和密码。
我认为他的mailadress的SMTPUsername不是用作邮件发件人的“ admin@xyz.com”。
邮件服务器似乎可以验证是否允许发送邮件的人代表admin@xyz.com发送邮件,这显然并非如此。
根据SMTP规范,错误5.7.1代表“无法中继”,这是您尝试执行的操作。
emailClient = new SmtpClient(yourEMAILSERVER);
emailClient.Send(yourMailMessageObject); // in your case "mailObj" that you have defined already
我将避免使用SMTPServer类或设置其Credentials或DeliveryMethod属性。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.