protected void but_dinyue_sendmail_Click(object sender, EventArgs e)
    {
        bind();
    }    private void sendMail(MailMessage mail)
    {
        SmtpClient smtpClient = new SmtpClient();
        smtpClient.EnableSsl = true;
        smtpClient.Host ="localhost";
        smtpClient.Port = 465;     //这个也是网上的代码
        smtpClient.Credentials = new NetworkCredential("","");    //这里不知道要填什么
        try
        {
            smtpClient.Send(mail);
            Response.Write("<script>alert('ok!');</script>");
        }
        catch (Exception ex)
        {
            Response.Write("<script>alert('"+ex.Message+"');</script>");
        }
    }    public void bind()
    {
        MailMessage mailMessage = new MailMessage();        mailMessage.From = new MailAddress("[email protected]");
        mailMessage.IsBodyHtml = true;
        mailMessage.To.Add("[email protected]");
        mailMessage.Subject = "测试发邮件";
        mailMessage.Body = "测试发邮件";
        sendMail(mailMessage);
    }         老是报“发送失败” Response.Write("<script>alert('"+ex.Message+"');</script>");  就是这句话里报出来的。我调试已经执行到smtpClient.Send(mail); 
    有哪个高手帮帮忙!  实在是无解 第一次做发邮件  

解决方案 »

  1.   

    smtpClient.EnableSsl = true;   这句是安全连接
    smtpClient.Host ="localhost";  但是你确认你在本机有smtp server吗?
      

  2.   

    通过本机的smtp往外发送邮件?你本机的smtp服务器搭建好了吗?还有就是每个SMTP服务器使用的端口不一定相同,需要查下live.com,hotmail.com这些邮件是不支持这样发送的,只能进入网页中进行发送,126.com,163都支持smtp,可以换个
      

  3.   

    client.Credentials = new System.Net.NetworkCredential("", ""); // Your user name & password  你的邮箱的用户名和密码。
      

  4.   

    http://www.cnblogs.com/alphawu/archive/2006/12/18/596205.html
      

  5.   

    smtpClient.Host ="localhost";//本机?有做邮件服务器配置吗?
            smtpClient.Port = 465;     //这个是邮件服务的端口号
            smtpClient.Credentials = new NetworkCredential("","");  //添你的服务器用户名和密码
      

  6.   

    补充:HOSTMAIL 和YAHOO邮件会过滤很多邮件,
    有个很好笑的规避办法,HOTMAIL的在内容里加HTTP://WWW。HOTMAIL。COM
    YAHOO的在标题上加AD
      

  7.   

    smtp服务  要怎么搭啊   我搭建是搭建了  可是不知道是不是你说的那个
      

  8.   


    SMTP 服务器要求安全连接或客户端未通过身份验证。 服务器响应为: 5.5.1 Authentication Required. Learn more at
      

  9.   


     public void SendMailUseZj()
        {
            System.Net.Mail.MailMessage msg = new System.Net.Mail.MailMessage();
            msg.To.Add("[email protected]");
            msg.To.Add("[email protected]");
            msg.From = new MailAddress("[email protected]", "AlphaWu", System.Text.Encoding.UTF8);
            /* 上面3个参数分别是发件人地址(可以随便写),发件人姓名,编码*/
            msg.Subject = "这是测试邮件";//邮件标题             
            msg.SubjectEncoding = System.Text.Encoding.UTF8;//邮件标题编码 
            msg.Body = "邮件内容";//邮件内容 
            msg.BodyEncoding = System.Text.Encoding.UTF8;//邮件内容编码 
            msg.IsBodyHtml = false;//是否是HTML邮件 
            msg.Priority = MailPriority.High;//邮件优先级         SmtpClient client = new SmtpClient();
            client.Credentials = new System.Net.NetworkCredential("[email protected]", "yjja");
            //在zj.com注册的邮箱和密码 
            client.Host = "smtp.zj.com";
            object userState = msg;
            try
            {
                client.SendAsync(msg, userState);
                //简单一点儿可以client.Send(msg); 
                Response.Write("<script>alert('aa');</script>");
            }
            catch (System.Net.Mail.SmtpException ex)
            {
                Response.Write("<script>alert('" + ex.Message + "');</script>");
            }
        } 
    还是报“发送失败”
      

  10.   

    static void Main(string[] args)
            {
                string message = "Hi,Let's go for a picnic!";
                MailMessage mail = new MailMessage("[email protected]", "[email protected]", "Invite you", message);
                mail.Attachments.Add(new Attachment(@"D:\桌面\receive\2.jpg", MediaTypeNames.Image.Jpeg));
                SmtpClient smtp = new SmtpClient("smtp.163.com");
                smtp.Credentials = new NetworkCredential("[email protected]", "密码");
                
                smtp.SendCompleted += new SendCompletedEventHandler(smtp_SendCompleted);
                smtp.SendAsync(mail, null);
                Console.WriteLine("正在发送");
                Console.ReadKey();
            }        static void smtp_SendCompleted(object sender, System.ComponentModel.AsyncCompletedEventArgs e)
            {
                if (e.Cancelled)
                    Console.WriteLine("cancelled");
                else if (e.Error != null)
                    Console.WriteLine(e.Error.Message);
                else
                    Console.WriteLine("发送完成");
            }
      

  11.   

    using System; 
    using System.Collections.Generic; 
    using System.Linq; 
    using System.Text; 
    using System.Net; //【发送邮件需要的命名空间】 
    using System.Net.Mail; 
    namespace SendMail 

        public static class Mail 
        { 
            public static bool SendMail(string FromMail, string MailPassWord, string SmtpServer, string ToMail, string Subject, string Content, string AddFile) 
            { 
                try 
                { 
                  SmtpClient ObjSmtpClient = new SmtpClient(); 
                  ObjSmtpClient.DeliveryMethod = SmtpDeliveryMethod.Network;//【邮件的发送方式】 
                    ObjSmtpClient.Host=SmtpServer; //【邮箱服务器】 
                    ObjSmtpClient.Credentials = new NetworkCredential(FromMail, MailPassWord);//【发送者身份验证】 
                    MailMessage ObjMail = new MailMessage(FromMail, ToMail);//【邮件内容】 
                    ObjMail.Subject = Subject;//【邮件的主题】 
                    ObjMail.Body = Content;//【邮件的内容】 
                    //【邮件的附件】 
                    if (AddFile!= "") 
                    { 
                        Attachment ObjAttachment = new Attachment(AddFile); 
                        ObjMail.Attachments.Add(ObjAttachment); 
                    } 
                    //【发送邮件】 
                    ObjSmtpClient.Send(ObjMail); 
                    return true; 
                } 
                catch 
                { 
                    return false; 
                }         } 
        } 

    from:http://497785609.qzone.qq.com/
      

  12.   

    引用命名空间 using System.Collections.Generic;
                using System.Net; //如果当前发送的邮件附件为空则传个空参数过去
    //string[] mailfilePath={};public static bool SendNetMail(string mailFrom,string mailTo,string mailPassWord,string mailSubject,string mailBody,string[] mailfilePath)
            {
                //创建邮件
                 //参数说明:
                 //mailFrom :发送邮件地址
               //mailTo:接收邮件地址
               //mailPassWord:发送邮件的邮箱密码
               //mailSubject:邮件主题
               //mailBody:邮件内容
                 //mailfilePath:邮件附件的路径集合,主要考虑到有时会发送多个附件的情况。
                System.Net.Mail.MailMessage newMail = new System.Net.Mail.MailMessage(mailFrom, mailTo, mailSubject, mailBody);
                newMail.IsBodyHtml = true;
                newMail.Priority = System.Net.Mail.MailPriority.High;//邮件发送优先级高
                 //创建邮件附件
                  string[] file = mailfilePath;
                if(file.Length!=0)  //判断当前附件集合是否为空如果不为空则将其添加到附件集合中
                {
                  FileInfo fi;
                  foreach (string filePath in file)
                  {
                    if (filePath != "")
                    {
                        fi = new FileInfo(filePath);
                        if (fi.Exists)
                        {
                            System.Net.Mail.Attachment newAttachment = new System.Net.Mail.Attachment(filePath, System.Net.Mime.MediaTypeNames.Application.Octet);
                            System.Net.Mime.ContentDisposition dispostion = newAttachment.ContentDisposition;
                            dispostion.CreationDate = System.IO.File.GetCreationTime(filePath);
                            dispostion.ModificationDate = System.IO.File.GetLastWriteTime(filePath);
                            dispostion.ReadDate = System.IO.File.GetLastAccessTime(filePath);
                            newMail.Attachments.Add(newAttachment);
                        }
                    }
                }
                }
                //发送邮件
                string[] mailSmtp = Regex.Split(mailFrom, "@", RegexOptions.IgnoreCase);
                System.Net.Mail.SmtpClient client = new System.Net.Mail.SmtpClient(mailSmtp[1].Insert(0, "smtp."), 25);
                client.Credentials = new System.Net.NetworkCredential(mailSmtp[0], mailPassWord);
                try
                {
                    client.Send(newMail);
                    return true;
                }
                catch
                {
                    return false;
                }
            }
      

  13.   

    http://blog.csdn.net/wizardlun/archive/2009/03/10/3976920.aspx==============================================================================
    //以下代码可直接run 
    System.Net.Mail.MailMessage mailobj = new System.Net.Mail.MailMessage();
            mailobj.From = new MailAddress("***","***");
            mailobj.To.Add("***");
           
            mailobj.Subject = "test";
            mailobj.Body = "test";
            mailobj.IsBodyHtml = true;
            mailobj.BodyEncoding = System.Text.UnicodeEncoding.UTF8;
            mailobj.Priority = MailPriority.High;        SmtpClient smtp = new SmtpClient("smtp.163.com");
            smtp.UseDefaultCredentials = false;
            smtp.Credentials = new NetworkCredential("***", "***");
            smtp.DeliveryMethod = SmtpDeliveryMethod.Network;
            smtp.Send(mailobj);