首先是按照網路上流傳的方法開啟Yahoo中國郵箱的POP。
有兩種方法:
方法一:
首先登陸你的yahoo郵箱,注意,要是***@yahoo.com.cn的,國外的Yahoo郵箱開POP是要收費的,而且沒有其他辦法可以使用。依次開啟郵箱選項->賬戶資訊,這時候要求你驗證密碼,輸入正確的密碼後開始設定賬戶資訊。點擊使用者資訊右邊的“編輯”串連,在下面的促銷資訊裡面選擇 “發送到我的Yahoo ! 電郵地址”,在中間的備用郵件地址裡面必須添一個,而且要通過驗證,這個不難,不多說了。
方法二:
先去http://mail.yahoo.com.cn,用你的帳號登陸進yahoo電郵。然後點擊下面的連結:http://rd.yahoo.com/mail_us/options/?http://edit.my.yahoo.com/config/set_popfwd?.src=ym&.done=http://us.f93.mail.yahoo.com/ym/Options?YY=22797,啟用。
到這一步就可以了,現在你的Yahoo郵箱已經可以支援POP收信和SMTP發信了。
現在我們來設定TB郵件用戶端。
一般的設定我就不說了,網上有很多這方面的說明,這裡著重說說伺服器的選擇。自從Yahoo升級至3.5G之後,Yahoo的SMTP就有問題了,POP還能收郵件。初步估計是Yahoo中國修改了SMTP伺服器吧。
如果按照原來的設定方法,伺服器是這樣配置的:
POP Server:pop.mail.yahoo.com.cn
SMTP Server:smtp.mail.yahoo.com.cn
但是升級之後的郵箱這樣設定就只能收取郵件而不能發送郵件了。
現在我們來說說Yahoo。Yahoo是全球性的大型網路供應商,只要在一個國家或地區註冊了Yahoo郵箱,用這個帳號在全世界各個國家或地區的 Yahoo主站都可以登陸,而且只要開通一下可以使用當地的介面來登陸郵箱。這也就給我們這次設定提供了方便之門了。可以這樣認為,Yahoo在全球範圍內管理著一個龐大的ID庫,不管ID後面是@yahoo.com.cn,還是@yahoo.com,它們都從屬於這個ID庫。只要有了屬於這個ID庫的 ID,通過全球任何一個Yahoo伺服器我們都能訪問到我們的郵箱。但是各個Yahoo伺服器又是相互獨立的,它們只是公用這個ID庫。所以說,中國 Yahoo可以改變SMTP伺服器的設定,但是它卻不可能發動全球的Yahoo伺服器一起來改變。所以說,只要我們開通了Yahoo的POP和SMTP之後,中國Yahoo不讓我們用SMTP發送郵件,我們可以通過美國Yahoo來發送。在這個分析基礎上,我做了如下的設定。
POP Server:pop.mail.yahoo.com.cn
SMTP Server:smtp.mail.yahoo.com
發送測試郵件到163,Gamil等郵箱均成功。
但是我還是不滿足,POP能否改呢?答案是肯定的。我將POP修改為:pop.mail.yahoo.com,經過測試,同樣能收到郵件。我覺得這也證明了我前面的分析是正確的。
總結:在Yahoo郵箱修改過之後,我們依然有辦法使用POP、SMTP來收發Yahoo郵箱。在設定時個人建議使用如下配置:
POP Server:pop.mail.yahoo.com.cn
SMTP Server:smtp.mail.yahoo.com
這樣滿足了告訴收取郵件和正確發送郵件。當然我們也可以這麼設定:
POP Server:pop.mail.yahoo.com
SMTP Server:smtp.mail.yahoo.com
缺點就在於收取郵件的時候登陸較慢。至於如何取捨,就在於各位看官的喜好了。
- try
- {
- MailMessage mm = new MailMessage();
- mm.From = new MailAddress(this._senderEmail);
- mm.To.Add(new MailAddress("接受地址"));
- mm.Subject = "aa";
- mm.IsBodyHtml = true;
- mm.Body = "bb";
- SmtpClient sc = new SmtpClient();
- sc.Host = this._smtpServer;
- sc.UseDefaultCredentials = true;//winform中不受影響,asp.net中,false表示不發送身份嚴正資訊
- sc.EnableSsl = false;//如果伺服器不支援ssl則報,伺服器不支援安全連線 錯誤
- sc.Credentials = new System.Net.NetworkCredential(this._senderEmail,this._serderPwd);//userName, password);//SMTP把這行注釋掉即可
- sc.DeliveryMethod = SmtpDeliveryMethod.Network;
- sc.Send(mm);
- }
- catch (Exception e)
- {
- }