1

这个 vb.net 代码似乎只有在运行时才有效......并且在看到“已发送电子邮件”消息后,我将程序保持打开另外 5-10 秒。如果我改为等待 0-1 秒,然后关闭 prg,则电子邮件无处可去。

SMTP.Send() 是在电子邮件完全发送后返回...还是仅在电子邮件开始发送时返回?(有时电子邮件正文和/或文件附件可能长达 10k,并且需要一段时间。)

将 myMailMessage 调暗为新 Net.Mail.MailMessage()
myMailMessage.From = 新 Net.Mail.MailAddress(fromEmail)
myMailMessage.To.Add(toEmail)
myMailMessage.Subject = strSubject
myMailMessage.Body = strBody
myMailMessage.IsBodyHtml = True

将 SMTP 调暗为新 Net.Mail.SmtpClient("smtp.gmail.com")
SMTP.端口 = 587
SMTP.EnableSsl = True
SMTP.Credentials = 新 System.Net.NetworkCredential(来自电子邮件,密码)
SMTP.Send(myMailMessage)
call MsgBox("邮件发送完毕")
4

1 回答 1

1

http://msdn.microsoft.com/en-us/library/swas0fwc.aspx

它不是异步调用,所以它只在电子邮件发送后返回。

于 2011-05-09T00:52:58.307 回答