最近使用騰訊企業郵箱發送郵件的一些問題


騰訊企業郵箱使用SSL時,原來的郵件發送程序一直提示參數錯誤

SmtpClient _smtpClient = new SmtpClient();
                _smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network;//指定電子郵件發送方式
                _smtpClient.Host = host; ;//指定SMTP服務器
                _smtpClient.Credentials = new System.Net.NetworkCredential(email, pwd);//用戶名和密碼
                _smtpClient.Port = 465;//使用的端口    
                _smtpClient.EnableSsl = true;//經過ssl加密   

端口與使用SSL都是配制正確的,但是一直發送不出去

找到以下資料 地址:http://www.ie81.com/Technology/225.html

這樣還是不行,報操作已超時錯誤 在國外的技術網站上看到一句話System.Net.Mail支持Explicit SSL但是不支持Implicit SSL,然后查了下關於這兩個模式的資料,我按照我理解的說一下:

Explicit SSL 發起於未加密的25,然后進行一個starttl握手,最終切換到加密的連接。

Implicit SSL 直接從指定的端口發起starttl握手。

既然指定了端口,那么應該就是使用了Implicit SSL,不知道微軟什么時候能更新下System.net.mail,System.net.mail能在郵件中嵌入圖片的。問題到了這里,那是不是就沒有辦法利用騰訊郵箱發郵件了呢?答案肯定是否定的,foxmail不就可以配置發送郵件嗎?我們可以利用CDO.Message和System.web.mail發送郵件。

 

C#利用System.web.mail發送郵件

System.Web.Mail.MailMessage mail = new System.Web.Mail.MailMessage();
try
{
mail.To = "收件人郵箱";
mail.From = "發件人郵箱";
mail.Subject = "subject";
mail.BodyFormat = System.Web.Mail.MailFormat.Html;
mail.Body = "body";
    
mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", "1"); //basic authentication
mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername", "發件人郵箱"); //set your username here
mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword", "發件人郵箱密碼"); //set your password here
mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpserverport", 465);//set port
mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpusessl", "true");//set is ssl
System.Web.Mail.SmtpMail.SmtpServer = "smtp.exmail.qq.com";
System.Web.Mail.SmtpMail.Send(mail);
//return true;
}
catch (Exception ex)
{
ex.ToString();
}

 

通過以上的方法,就可以正常調用騰訊企業郵箱進行郵件發送了

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM