System.Net.Mail.SmtpClient smtp = new System.Net.Mail.SmtpClient();
            System.Net.Mail.MailMessage msg = new System.Net.Mail.MailMessage();            msg.Subject = "你的最新南北湖登录帐户";//标题
            msg.From = new System.Net.Mail.MailAddress("[email protected]");//发送人
            msg.To.Add("[email protected]");//接收人
            msg.IsBodyHtml = true;
            msg.BodyEncoding = System.Text.Encoding.UTF8;
            msg.Body = "123";//内容
          
            smtp.Host ="129.1.1.197";//IP或主机名
            smtp.EnableSsl = false;//是否加密
            smtp.Port = 25;//端口
            smtp.Credentials = new System.Net.NetworkCredential("huanxiang.feixiang", "13962553242");//发送通验证
            smtp.Send(msg);//发送

解决方案 »

  1.   

      smtp.Credentials = new System.Net.NetworkCredential("huanxiang.feixiang", "13962553242");//发送通验证 
    这句应该是有问题,用户名应该是email格式,不是这个格式吧,验证不通过
      

  2.   

    smtp.UseDefaultCredentials = false;
      

  3.   

    void Application_Error(object sender, EventArgs e)
        {
            //在出现未处理的错误时运行的代码
            if (HttpContext.Current.Server.GetLastError() != null)
            {
                Exception myException = HttpContext.Current.Server.GetLastError().GetBaseException();
                string mailSubject = "Error in page " + Request.Url.ToString();
                string message = string.Empty;
                message += "<strong>Message</strong><br />" + myException.Message + "<br />";
                message += "<strong>StackTrace</strong><br />" + myException.StackTrace + "<br />";
                message += "<strong>Query String</strong><br />" + Request.QueryString.ToString() + "<br />";
                MailMessage myMessage = new MailMessage();
                myMessage.Subject = mailSubject;
                myMessage.Body = message;
                myMessage.From = new MailAddress("[email protected]");
                myMessage.To.Add(new MailAddress("[email protected]"));
                myMessage.IsBodyHtml = true;
                SmtpClient mySmtpClient = new SmtpClient("smtp.163.com");
                mySmtpClient.UseDefaultCredentials = false;
                mySmtpClient.Credentials = new System.Net.NetworkCredential("[email protected]", "********");
                mySmtpClient.Send(myMessage);
            }
        }
    这是我之前写的一点发邮件的代码,自己比对比对吧,我也不是很会这东西。
    smtp.Credentials = new System.Net.NetworkCredential("huanxiang.feixiang", "13962553242")这个可能有问题,前面是账号,后面是密码。huanxiang.feixiang连@都没有……
      

  4.   

    我前几天也遇到了。我又不想用jmail.发现这个System.Net.Mail似乎有点问题呢。不论我怎么设置Credentials ,都是null.后面,我换成了原来的System.Web.Mail就OK 了。
    LZ换成原来的System.Web.Mail,虽然提示过时了,但是使用起来没关系了。
      

  5.   

    MailAddress from = new MailAddress("发送方的邮箱/最好是163的,因为我下面设置的是163,如果你要换126还是其他的,你自己改改");
                MailAddress to = new MailAddress("[email protected]");
                MailMessage message = new MailMessage(from, to);
                message.Subject = "xxx";
                message.Body = "xxxx";
                SmtpClient client = new SmtpClient("smtp.163.com");
                client.Credentials = CredentialCache.DefaultNetworkCredentials;
                client.DeliveryMethod = SmtpDeliveryMethod.Network;
                client.Port = 25;
                client.Credentials = new System.Net.NetworkCredential("用户名", "密码");
                try
                {
                    client.Send(message);
                    Console.WriteLine("发送成功!");
                }
                catch (Exception ex)
                {
                    Console.WriteLine("发送失败"+ex.ToString());
                }            Console.Read(); 
            }        
    我自己测试过了
    可以用
      

  6.   

    如果不可以用
    你要去163邮箱里的设置/客户端设置/设置POP3/SMTP/IMAP
    开启POP3/SMTP服务
      

  7.   

    3年内注册的网易账号不支持smtp
    换个sina的试下
      

  8.   

    我测试通过的:
    //一:用自己的服务器作为邮件服务器时:
    //如出现:邮箱不可用。 服务器响应为: 5.7.1 Unable to relay for ***@gmail.com
    //解决办法如下:在IIS中,右击“默认SMTP虚拟服务器”,选择“属性”,切换到“访问”页,点击“中继”按钮,在弹出框中选择“仅以下列表除外”,确定。
    //二:用其它的邮件服务器发送,经测试大多数免费邮箱都不提供SMTP服务,用qq邮箱的就可以,方法:进入qq邮箱-->设置-->帐户-->开通POP3/IMAP/SMTP服务,即可用smtp.qq.com作为邮件服务器了,可用它来发送邮件using System;
    using System.Data;
    using System.Configuration;
    using System.Collections;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;
    using System.Net.Mail;public partial class _Default : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {    }    public void SendSMTPEMail(string strSmtpServer, string strFrom, string strFromPass, string strto, string strSubject, string strBody)
        {
            System.Net.Mail.SmtpClient client = new SmtpClient(strSmtpServer);
            client.UseDefaultCredentials = false;
            client.Credentials = new System.Net.NetworkCredential(strFrom, strFromPass);
            client.DeliveryMethod = SmtpDeliveryMethod.Network;
            System.Net.Mail.MailMessage message = new MailMessage(strFrom, strto, strSubject, strBody);
            message.BodyEncoding = System.Text.Encoding.UTF8;
            message.IsBodyHtml = true;
            client.Send(message);
        }
        //第一个参数是邮箱服务器
        //第二个参数发件人的帐号
        //第三个参数发件人密码
        //第四个参数收件人帐号
        //第五个参数主题
        //第六个参数内容.
        protected void Button1_Click(object sender, EventArgs e)
        {//发送邮件
            try
            {
                //SendSMTPEMail("nz.oicp.net", "[email protected]", "123", "[email protected]", "123", "用asp.net发送邮件,用自己的邮件服务器,测试成功");
                SendSMTPEMail("smtp.qq.com", "[email protected]", "123xxxxxxx", "[email protected]", "123", "用asp.net发送邮件,用qq的smtp.qq.com服务器,测试成功");        }
            catch (Exception er)
            {
                Label1.Text = er.Message;
            }
        }
    }
      

  9.   


    好像是因为
    smtp.UseDefaultCredentials;的关系,默认true就忽略掉了。。
      

  10.   

    经测试,163的不可用!
    不允许使用邮箱名称。 服务器响应为: authentication is required,smtp2,DNGowKBbFLBk4W5LAO8cDQ--.34146S2 1265557860