MailMessage mailObj = new MailMessage();
mailObj.From = new MailAddress("6786897965654@qq.com"); //发送人邮箱地址
mailObj.To.Add("45675645645@qq.com"); //收件人邮箱地址
mailObj.Subject = "11111111"; //主题
mailObj.Body = "222222"; //正文
SmtpClient smtp = new SmtpClient();
smtp.Host = "smtp.qq.com"; //smtp服务器名称
smtp.UseDefaultCredentials = true;
smtp.Credentials = new NetworkCredential("6786897965654@qq.com", "dvuuqjysjtabjhjgfyuffg"); //发送人的登录名和密码,注意密码为授权码哦
smtp.EnableSsl = true;
smtp.Send(mailObj);
2. 常见问题
2.1 命令顺序不正确. 服务器响应为:Error: need EHLO and AUTH first !
解决方案:
设置SmtpClient对象的EnableSsl属性为true就可以了。
----更新----
QQ邮箱使用ssl加密,需要设置SmtpClient.EnableSsl 属性为True表示“指定 SmtpClient 使用安全套接字层 (SSL) 加密连接。”
2.2 参数或变量中有语法错误。 服务器响应为:mail fromaddress must be same as authorization user
解决方案:1. 设置开启POP3/SMTP服务, 2. 需要设置QQ邮箱的独立密码,程序发送邮件时,使用邮箱的独立密码,而不是QQ的登录密码 3. 需要生成授权码,第三方客户端登录时使用授权码进行登录