public void SendMail(string To, string From, string Body, string Title, string Password,string username)
        {
            MailAddress from = new MailAddress(From);
            MailAddress to = new MailAddress(To);
            MailMessage message = new MailMessage(from, to);
            // message.Subject = "Using the SmtpClient class.";
            message.Subject = Title;
            message.Body = Body;
            // Add a carbon copy recipient.
            SmtpClient client = new SmtpClient();
            client.DeliveryMethod = SmtpDeliveryMethod.Network;
            client.Port = 25;
            client.Host = "smtp.163.com";
            //client.UseDefaultCredentials = true; 
            client.Credentials = new NetworkCredential(username, Password);
            client.Send(message);
        } 
程序执行成功但却没收到邮件,测试时在to里增加中文名会报错,但能收到邮件,却无主题和内容。

解决方案 »

  1.   

    就是根据网上的写的,程序执行成功但没收到邮件。
    不行的话给个支持smtp的邮箱吧,我也给分
      

  2.   

    找到问题了,163的smtp有问题
    谁提供个注册14天以上的qq邮箱,我就把分给他
      

  3.   

    有點亂重發using System.Net.Mail;
    using System.Net.Configuration;
    public static bool SendEmails(string ClientEmal,string Subject,string Body,string CcEmail,string filePath)
            {
                MailAddress EmailFrom=new MailAddress("[email protected]");
                MailAddress EmailTo=new MailAddress(ClientEmal);
               
                MailMessage Email=new MailMessage(EmailFrom, EmailTo);
                Email.Priority= MailPriority.High;
                Email.IsBodyHtml=true;//设置邮件格式            Email.Subject= Subject;
                Email.Body= Body;//添加抄送电子邮件if(CcEmail!="")
                    Email.CC.Add(CcEmail);if (filePath!="")
                {// Server.MapPath("EmailAttachment\\") + "Data.rar";//附件路径                Attachment data=new Attachment(filePath, System.Net.Mime.MediaTypeNames.Application.Octet);// Add time stamp information for the file.                System.Net.Mime.ContentDisposition disposition= data.ContentDisposition;
                    disposition.CreationDate= System.IO.File.GetCreationTime(filePath);
                    disposition.ModificationDate= System.IO.File.GetLastWriteTime(filePath);
                    disposition.ReadDate= System.IO.File.GetLastAccessTime(filePath);// Add the file attachment to this e-mail message.                Email.Attachments.Add(data);
                }
             
                SmtpSection cfg= NetSectionGroup.GetSectionGroup(WebConfigurationManager.OpenWebConfiguration("~/web.config")).MailSettings.Smtp;
                SmtpClient Client=new SmtpClient(cfg.Network.Host);//验证 (Credentials 凭证)            Client.Credentials=new System.Net.NetworkCredential(cfg.Network.UserName, cfg.Network.Password);//处理待发的电子邮件的方法  (Delivery  发送,传输)            Client.DeliveryMethod= SmtpDeliveryMethod.Network;try
                {
                    Client.Send(Email);returntrue;
                }catch (SmtpFailedRecipientsException ex)
                {for (int i=0; i < ex.InnerExceptions.Length; i++)
                    {
                        SmtpStatusCode status= ex.InnerExceptions[i].StatusCode;if (status== SmtpStatusCode.MailboxBusy|| status== SmtpStatusCode.MailboxUnavailable)
                        {// Response.Write("Delivery failed - retrying in 5 seconds.");                        System.Threading.Thread.Sleep(5000);
                            Client.Send(Email);
                        }else
                        {                    }
                    }            }returnfalse;
            }
    WEB.CONFIG 配置 stmp :
    XML code
    邮件配置
    --> <system.net>
     <mailSettings>
     <smtpdeliveryMethod="Network" from="[email protected]">
     <networkhost="smtp.163.com"  userName="[email protected]" password="*****"/> </smtp> </mailSettings>
     </system.net>
      

  4.   

    catch (SmtpFailedRecipientsException ex)
                {for (int i=0; i < ex.InnerExceptions.Length; i++)
                    {
                        SmtpStatusCode status= ex.InnerExceptions[i].StatusCode;if (status== SmtpStatusCode.MailboxBusy|| status== SmtpStatusCode.MailboxUnavailable)
                        {// Response.Write("Delivery failed - retrying in 5 seconds.");                        System.Threading.Thread.Sleep(5000);
                            Client.Send(Email);
                        }else
                        {                    }
                    }这里解释下