请教一下各位,我用VS.NET2005写了个简单的发送邮件,代码如下:  
using  System.net.Mail;  
public  void  SendEmail()  
{    MailMessage  mail  =  new  MailMessage();  
     mail.From.Address  =  "[email protected]";  
     mail.To.Add(new  MailAddress("[email protected]"));  
     mail.Subject  =  "测试邮件";  
     mail.Body  =  "Testing,Testing";  
     mail.IsBodyHtml  =  true;  
     mail.Priority  =  MailPriority.High;  
     SmtpClient  smtp  =  new  SmtpClient("smtp.163.com");  
     smtp.Credentials  =  new  System.Net.NetworkCredential("[email protected]","abcde"); 
     smtp.Send(mail);
}  
 调试的时候捕捉到异常:"邮箱不可用。  服务器响应为:  Óû§±»Ëø¶¨",不知道为什么.. 
 还有个问题就是System.Net.NetworkCredential()里的第一个参数是用邮箱全名(例如[email protected]),还是邮箱@前面的字符串就可以了?  
先谢谢了..  :>

解决方案 »

  1.   

    可参考本人Blog 的邮件发送类
      

  2.   

    谢谢guanshenglang(senay) 提供的邮件发送类,很有学习的价值!! :>但是我还有问题想问问,不能用System.net.Mail来发送吗?看过您的邮件发送类觉得和System.net.Mail封装的类是差不多的呢? 可能我理解得还是很肤浅吧请指出一下我这个方法有什么不对的呢?谢谢了。。  ;》
      

  3.   

    smtp.Credentials  =  new  System.Net.NetworkCredential("邮箱名","密码");
      

  4.   

    可以发了。。是发送邮件的服务器问题吧。。我本来想用smtp.126.com的。。用了后总是说服务器不可用,换个163的就可以用。。这是怎么回事?  ;》
      

  5.   

    谢谢lingbo_wx(上海小浪人) 的指点,我试了在SmtpClient的第二个构造函数里添加port
    和您提示的实例后的port属性设置25,但是问题仍然是服务器不可用,请问为什么呢? 谢谢 ;?
      

  6.   

    我用过sina, 163,126的smtp都是这样设置,都可以正确法送出去
    25只是个一般的值,你要根据你的mail供应商的smtp端口发送