日期:2014-05-18  浏览次数:20539 次

救命啊。5个小时了
一直是邮件发送失败。
在客户公司。使用他们的smtp。用他们自己的邮件测试。总是说:拒绝了发件人的地址
他们是用代理上网的。。
他们的smtp要身份验证,用户名和密码检查N遍了。
我也使用了System.Web.Mail的1.1方法和Net.Mail的2.0方法。还试了CDO。。都是这样的提示。
老大们救命

------解决方案--------------------
邮件服务器被列入黑名单,换域名
------解决方案--------------------
mark smtp 问题
------解决方案--------------------
你换一个发送账户看看,比如发件人换为GMAIL的试试
------解决方案--------------------
你换一个发送账户看看,比如发件人换为GMAIL的试试
------解决方案--------------------
是不是用户验证的问题
定义验证类 
 internal class CMailCredential : System.Net.ICredentialsByHost 


private string _emailUserID = ""; 
private string _emailPassword = ""; 

/// <summary > 
/// 构造函数 
/// </summary > 
/// <param name="emailUserID" >EMail用户名 </param > 
/// <param name="emailPassword" >Email密码 </param > 
public CMailCredential(string emailUserID, string emailPassword) 

_emailUserID = emailUserID; 
_emailPassword = emailPassword; 



/// <summary > 
/// 网络注册 
/// </summary > 
/// <param name="host" >主机 </param > 
/// <param name="port" >端口 </param > 
/// <param name="authenticationType" >验证类型 </param > 
/// <returns > </returns > 
public NetworkCredential GetCredential(string host, int port, string authenticationType) 

return new NetworkCredential(_emailUserID, _emailPassword); //输入Email用户名和Email密码 





发送Email 
 SmtpClient Smtp = new SmtpClient(HOSTADDRESS); 
 Smtp.Credentials = new CMailCredential(HOSTMAIL, HOSTMAILPASSWORD); //添加用户密码 
MailMessage Mail = new MailMessage() 
Smtp.Send(Mail); 

这样就可以完成验证了
------解决方案--------------------

------解决方案--------------------
账号写错了。
------解决方案--------------------
如果你用的邮箱名(发件人的用户名是05年以后注册的,肯定不行,我先前也碰到了后来我换了一个早一点的邮箱ok了(别人跟我说的),你换一个吧