原文地址:http://www.cnblogs.com/skywind/archive/2007/09/21/901734.html

Method 1

--------------------------------------------------------------------------------------------------------

View Code

// using System.Net.Mail;
MailMessage message = new MailMessage();
message.From = new MailAddress("Sender@gmail.com", "Your DisplayName"); // 发件人邮箱地址和显示名称
message.To.Add(new MailAddress("Recipients@gmail.com")); // 收件人地址,可以设置多个

message.Subject = "邮件标题" ;

message.Body = "邮件正文";

message .IsBodyHtml = false; // 设置邮件正文是否为 html 格式的值
message .BodyEncoding = System.Text.Encoding.UTF8;  // 设置邮件正文编码
message .Priority = MailPriority.Normal; // 设置电子邮件的优先级

// 包含附件

string attachPath = "附件地址";

System.Net.Mail.Attachment attachment = new System.Net.Mail.Attachment(attachPath);

attachment.Name = System.IO.Path.GetFileName(attachPath); // 附件名称
attachment.NameEncoding = System.Text.Encoding.GetEncoding("gb2312"); // 附件名称的编码
attachment.TransferEncoding = System.Net.Mime.TransferEncoding.Base64; // 设置附件的编码
attachment.ContentDisposition.Inline = true;
attachment.ContentDisposition.DispositionType = System.Net.Mime.DispositionTypeNames.Inline;
string cid = attachment.ContentId; // 关键性的地方,这里得到一个id数值

message .Attachments.Add(attachment); // 可以添加多个附件

SmtpClient client = new SmtpClient();

client .Host = "smtp.gmail.com"; // 设置 smtp 事务的主机名称或 IP 地址
client .Port = 587; // 端口号

client.Credentials = new System.Net.NetworkCredential("Sender@gmail.com", "mailbox password"); // Your mail address & password
client.EnableSsl = true; // 经过ssl加密,gmail 邮箱必须设置为 ture

try
{
client.Send(message);
Response.Write("邮件发送到" + message.To.ToString() + "<br>");
}
catch (Exception ee)
{
Response.Write(ee.messageage + "<br>" + ee.InnerException.messageage);
}

Method 2
------------------------------------------------------------------------------------------------------

// http://weblogs.asp.net/scottgu/archive/2005/12/10/432854.aspx

View Code

// using System.Net.Mail;
MailMessage message = new MailMessage();
message.From = new MailAddress("Sender@gmail.com");

message.To.Add(new MailAddress("Recipients@gmail.com"));

message.Subject = "This is my subject"
message.Body = "This is the content"
SmtpClient client = new SmtpClient();
client.EnableSsl = true;  // 经过ssl加密,gmail 邮箱必须设置为 ture

try
{
client.Send(message);
Response.Write("邮件发送到" + message.To.ToString() + "<br>");
}
catch (Exception ee)
{
Response.Write(ee.Message );
}

//In web.config

<system.net>
<mailSettings>
<smtp from="displayName<from@gmail.com>">
<network host="smtp.gmail.com" port="587" userName="Sender@gmail.com" password="your pwd" />
<!-- if has 'defaultCredentials="true"' , using Gmail can not send success -->
</smtp>
</mailSettings>
</system.net>

转载于:https://www.cnblogs.com/beijia/archive/2012/05/09/mail.html

用C#实现用免费smtp服务器(GMail)发邮件(转)相关推荐

  1. 阿里云服务器不能发邮件解决方法

    特别注意阿里云的<25端口使用服务协议>:     我/我公司承诺并保证TCP 25端口仅用来连接第三方的SMTP服务器,从第三方的SMTP服务器外发邮件.如发现您使用本机IP直接SMTP ...

  2. 通过QQ邮箱的SMTP服务器发送QQ邮件至163邮箱提示“发送邮件失败”的解决方案(三种可能性,不妨一试)...

    IDE:Visual Studio 2010[C#] + .NET 4.0框架 引用.NET 4.0框架的System.Net.Mail命名空间开发发送邮件的程序.发送方:QQ邮箱 接收方:163邮箱 ...

  3. 阿里云服务器不能发邮件禁用25端口的三种解决方法

    分享使人快乐,遇到的坑通过博文分享给大家,总结解决办法使更多的人节省宝贵的时间去干其他的事,于是我决定写下了这篇博文: 阿里云发送SMTP邮件失败   阿里云服务器不能发邮件解决方法 ,第三种方法是可 ...

  4. 检测到smtp服务器版本信息,邮件服务器DBMail检测功能

    1.DBMail检测功能 互联网邮件通讯环境是非常复杂的,您可能会遇到很多不知道原因的情况.DBMail提供了非常有用的多种检测诊断功能,帮助您快速定位问题.建议您安装好DBMail以后,单击菜单栏上 ...

  5. 服务器里面发邮件,通过SMTP中继服务器发送邮件的问题

    昨天写了一篇 SMTP中继服务器部署的文章,有朋友问我本地多个应用使用了不同的邮件通知地址,但发邮件的时候只能使用SMTP中继服务器上配置的地址才能发送,如下图: 所有的业务应用都必须配置成上图中的地 ...

  6. win服务器自动发邮件,asp.net基于windows服务实现定时发送邮件的方法

    本文实例讲述了asp.net基于windows服务实现定时发送邮件的方法.分享给大家供大家参考,具体如下: //定义组件 private System.Timers.Timer time; publi ...

  7. php使用gmail发送邮件,PHP使用gmail发邮件

    实验室要举办一个会议,要我做一个会议的网站.使用了开源的openconf,十分省事.但发邮件简单的使用了PHP的mail函数,没有经过SMTP认证,发送的邮件很可能出现在对方的垃圾箱里,甚至会被退信. ...

  8. python发邮件怎么用服务器每天发_神级程序员的Python爬虫!服务器定时发邮件(知识点全面)...

    很多小伙伴找我问:老铁,这些代码我写的和你一样,为什么我的不行.其实这是最基本的函数,你照葫芦画瓢是没什么多大的作用的.我不会直接告诉你答案也不是我不想告诉你,而是希望你能跟着思路,自己找到答案,这才 ...

  9. win服务器自动发邮件,windows关机前执行脚本设置与关机blat自动发送邮件脚本模板...

    windows关机前执行脚本设置与关机blat自动发送邮件脚本模板 发布时间:2020-07-25 02:21:24 来源:51CTO 阅读:3093 作者:nn1183 价值:实时掌握开关机记录: ...

  10. 借用smtp.qq.com发邮件

    至于sentmail和postfix的配置有多么麻烦学生在这里就不多废话了...反正是配置了N个小时,最终弄的头晕眼花也没弄好... 下面的方法可以让你完全摆脱这两个工具...当然,你要是想做邮件服务 ...

最新文章

  1. Docker、Kubernetes、Apache Mesos 之争 | 一个与传说不同的故事
  2. MapReduce程序的运行全貌
  3. 力扣: 231. 2的幂 【位运算】
  4. 【Python 爬虫】 2、HTTP基本原理
  5. RuoYi-Process多模块activity工作流项目快速搭建
  6. jQuery表单校验jquery.validate.js的使用
  7. mybatis XML格式日期的处理 还有 日期对比的sql
  8. 【Pytorch神经网络实战案例】04 使用Pytorch实现线性回归
  9. hive python脚本,Hive调用Python脚本错误
  10. 电脑硬盘数据不小心格式化后,恢复数据的方法介绍
  11. 小米笔记本bios版本大全_RedmiBook 14笔记本评测:初来乍到却熟路轻辙
  12. Office产品 “您的组织策略阻止我们为您完成此操作” 解决办法
  13. python用tkinter做简易计算器_基于python tkinter的简单计算器(v1.0)
  14. 网络流 24 题, 餐巾计划问题 (最小费用流 )
  15. vue v-for循环表格 希望第四个<th>或<td>标签自动换到下一行应该怎么做?
  16. KB / KiB,MB / MiB,GB / GiB,… 的区别
  17. elasti 时间范围查询
  18. 电子传真文档怎样加盖印章
  19. SpringBoot22-spingboot数据访问-Spring Data JPA
  20. 使用python和opencv进行人脸识别时遇到cv2.error: OpenCV(4.5.1) C:\Users\appveyor\AppData\Local\Temp\1\pip-req-buil

热门文章

  1. java 中linux命令参数说明,java中linux命令参数说明
  2. 二级VB培训笔记07:通用对话框
  3. 【JSOI2007】【BZOJ1029】【codevs2913】建筑抢修,贪心与堆
  4. 【NOIP2011TG】【OJ4366】【codevs1135】选择客栈
  5. 人称代词和Be动词的现在简单肯定式_1
  6. arch linux 安装xfce_华为荣耀Magicbook安装Manjaro系统指北
  7. bzoj2424 [HAOI2010]订货 费用流
  8. Intel Haswell/Broadwell架构/微架构/流水线 (5)-高速缓存存储器子系统
  9. Intel Core Enhanced Core架构/微架构/流水线 (7) - 栈指针跟踪器/微熔合
  10. 计算机网络(16)-计算机网络应用示例