【发布时间】:2016-05-16 16:21:43
【问题描述】:
当我尝试在具有环境(Visual Studio 2015)的计算机上发送电子邮件时,一切都很好,但是当我将它复制到另一台计算机(VMWare 虚拟机)并尝试关闭它时,这里是主要代码:
try
{
SmtpClient client = new SmtpClient();
client.Port = 587;
client.Host = "smtp.gmail.com";
client.EnableSsl = true;
client.Timeout = 10000;
client.DeliveryMethod = SmtpDeliveryMethod.Network;
client.UseDefaultCredentials = false;
client.Credentials = new System.Net.NetworkCredential("bazymysql@gmail.com", "xyz");
MailMessage mm = new MailMessage("donotreply@domain.com", "bazymysql@gmail.com", "Przechwycony ciag znakow", tresc.Text);
mm.BodyEncoding = UTF8Encoding.UTF8;
mm.DeliveryNotificationOptions = DeliveryNotificationOptions.OnFailure;
client.Send(mm);
}
catch (SmtpException ex)
{
MessageBox.Show(ex.Message);
}
我尝试过的:
- 复制 System.Net dll
- 开发 86x 64x
- 以管理员身份运行
【问题讨论】:
-
可能是线程运行到无穷大。我建议您将该部分包含在
Thread中,以便它单独运行。SmtpClient将一直运行,直到它发送或失败电子邮件。 -
@Theunis 我不明白你的意思:(你能用代码解释一下吗?
-
请不要在代码中添加您的密码,并在下面查看我试图解释的内容
-
@Theunis 那不是我的密码 ;)