因為需求上會針對多個條件來採用不同的郵件伺服器寄信
使用vb.net以gmail伺服器寄送郵件時,常會遇到無法寄送的狀況....
查看錯誤訊息 Credentials =nothing
肯定是程式碼執行的順序有點問題。當初還以為是傳入函數的參數有問題,才導致這個問題
問題解決了,與大家分享一下
黃色區塊的程式碼,順序有差喔,若Credential在之前,可能會導致nothing的錯誤
反正,就照抄即可。
Dim mail As New MailMessage()
Dim cred As New System.Net.NetworkCredential(帳號, 密碼) '帳號(不需含@gmail.com)
mail.[To].Add("xxxxxxxxxx@yahoo.com.tw")
mail.Subject =信件主旨
mail.From = New System.Net.Mail.MailAddress(寄件人郵件, 稱謂)
mail.IsBodyHtml = True 'HTML內文
mail.Body = 信件內容
Dim smtp As New SmtpClient("smtp.gmail.com")
smtp.UseDefaultCredentials = False
smtp.EnableSsl = True
smtp.Credentials = cred
smtp.Port = 587
'送出Mailsmtp.Send(mail)