1. 程式人生 > >C#呼叫Mail傳送QQ郵件

C#呼叫Mail傳送QQ郵件

需要用到:

1.System.Net.Mail;

2.QQ郵箱的POP3/SMTP服務碼

QQ郵箱的POP3/SMTP服務碼獲取方法:

1.開啟qq郵箱:


2.進入設定頁面--》賬戶:(往下翻)開啟服務POP3/SMTP服務,QQ郵箱會給一個POP3/SMTP服務碼儲存下來



程式碼:

 /// <summary>
        /// 傳送郵件,成功返回true,否則false
        /// </summary>
        /// <param name="to">收件人</param>
        /// <param name="body">內容</param>
        /// <param name="title">標題</param>
        /// <param name="whichEmail">是否join</param>
        /// <param name="path">附件</param>
        /// <param name="Fname">姓名</param>
        /// <returns>結果</returns>
        public static bool SentMailHXD(string to, string body, string title, string whichEmail, string path, string Fname)
        {
            bool retrunBool = false;
            MailMessage mail = new MailMessage();
            SmtpClient smtp = new SmtpClient();
            string strFromEmail = "";//你的郵箱
            string strEmailPassword = "";//QQPOP3/SMTP服務碼
            try
            {
                mail.From = new MailAddress("" + Fname + "<" + strFromEmail + ">");
                mail.To.Add(new MailAddress(to));
                mail.BodyEncoding = Encoding.UTF8;
                mail.IsBodyHtml = true;
                mail.SubjectEncoding = Encoding.UTF8;
                mail.Priority = MailPriority.Normal;
                mail.Body = body;
                mail.Subject = title;
                smtp.Host = "smtp.qq.com";
                smtp.DeliveryMethod = SmtpDeliveryMethod.Network;
                smtp.Credentials = new System.Net.NetworkCredential(strFromEmail, strEmailPassword);
                //傳送郵件
                smtp.Send(mail);   //同步傳送
                retrunBool = true;
            }
            catch (Exception ex)
            {
                retrunBool = false;
            }
            // smtp.SendAsync(mail, mail.To); //非同步傳送 (非同步傳送時頁面上要加上Async="true" )
            return retrunBool;
        }

呼叫方法即可:
   SentMailHXD("收件人", "內容, "標題", "抄送", "附件(附件方法我移除了)", "你的姓名");</span>