Кажется, что этот код vb.net работает ТОЛЬКО , если выполняется ... и я держу программу открытой еще 5-10 секунд ПОСЛЕ того, как я вижу сообщение "отправлено по электронной почте" Если я вместо этого подожду 0-1 с, а затем закрою prg, электронная почта не отправится.
Возвращает ли SMTP.Send () ПОСЛЕ того, как электронное письмо полностью отправлено ... или только когда оно НАЧИНАЕТСЯ выходить? (Иногда тело письма и / или вложение файла могут иметь длину 10 КБ и занять некоторое время.)
Dim myMailMessage As New Net.Mail.MailMessage()
myMailMessage.From = New Net.Mail.MailAddress(fromEmail)
myMailMessage.To.Add(toEmail)
myMailMessage.Subject = strSubject
myMailMessage.Body = strBody
myMailMessage.IsBodyHtml = True
Dim SMTP As New Net.Mail.SmtpClient("smtp.gmail.com")
SMTP.Port = 587
SMTP.EnableSsl = True
SMTP.Credentials = New System.Net.NetworkCredential(fromEmail, password)
SMTP.Send(myMailMessage)
call MsgBox("Email is completely done sending")