string smtpService = "smtp.qq.com";
string sendEmail = "*******@qq.com";
string sendpwd = "*********"; //这里是授权码
//确定smtp服务器地址 实例化一个Smtp客户端
SmtpClient smtpclient = new SmtpClient();
smtpclient.Host = smtpService;
//smtpclient.Port = 25;
smtpclient.Port = "";//qq邮箱可以不用端口
//确定发件地址与收件地址
MailAddress sendAddress = new MailAddress(sendEmail);
MailAddress receiveAddress = new MailAddress(receiveEmail);
//构造一个Email的Message对象 内容信息
MailMessage mailMessage = new MailMessage(sendAddress, receiveAddress);
//MailMessage mailMessage = new MailMessage();
//mailMessage.From = new MailAddress(sendEmail, "");//发件人地址
//var attachFile = new Attachment(filepath); //增加附件
if (filepath != "" && filepath != null)
{
mailMessage.Attachments.Add(new Attachment(filepath.Replace('\\', '/')));
}
//mailMessage.Subject = topic + DateTime.Now;
mailMessage.Subject = topic;
mailMessage.SubjectEncoding = System.Text.Encoding.UTF8;
mailMessage.Body = content;
mailMessage.BodyEncoding = System.Text.Encoding.UTF8;
//邮件发送方式 通过网络发送到smtp服务器
smtpclient.DeliveryMethod = SmtpDeliveryMethod.Network;
//如果服务器支持安全连接,则将安全连接设为true
smtpclient.EnableSsl = true;
//smtpclient.EnableSsl = false;
//是否使用默认凭据,若为false,则使用自定义的证书,就是下面的networkCredential实例对象
smtpclient.UseDefaultCredentials = false;
//指定邮箱账号和密码,需要注意的是,这个密码是你在QQ邮箱设置里开启服务的时候给你的那个授权码
NetworkCredential networkCredential = new NetworkCredential(sendEmail, sendPwd);
//NetworkCredential networkCredential = new NetworkCredential(sendEmail, "");
smtpclient.Credentials = networkCredential;
//发送邮件
smtpclient.Send(mailMessage);
//遍历所有查找到的进程
foreach (Attachment item in mailMessage.Attachments)
{
item.Dispose(); //一定要释放该对象,否则无法删除附件
}
if (filepath != "" && filepath != null)
{
System.IO.File.Delete(filepath);
}
//System.IO.File.Delete(filepath);