使用.net发送Email总结

 

总结:使用.net发送Email方法

在此非常感谢http://blog.csdn.net/zhoufoxcn

.net1.0 .net21.1中的方法:

在此引用using System.Web.Mail;vs2008中需要自己添加引用

MailMessage objMailMessage;

objMailMessage = new MailMessage();

objMailMessage.From = "bmj_apple@sina.com";//源邮件地址

objMailMessage.To = "bai.mingjiang@gmail.com";//目的邮件地址,也就是发给我哈

objMailMessage.Subject = "邮件发送标题:你好";//发送邮件的标题

objMailMessage.Body = "邮件发送标内容:测试一下是否发送成功!将附件附加到邮件消息对象中";//发送邮件的内容

//objMailMessage.Attachments.Add(附件);//将附件附加到邮件消息对象中

//基本权限

objMailMessage.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", "1");

//用户名

objMailMessage.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername", "bmj_apple");

//密码

objMailMessage.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword", "*****密码****");

 

//SMTP地址,也可换其他的服务器,但有些邮件不提供smtp服务,比如163

SmtpMail.SmtpServer = "smtp.sina.com.cn";

//开始发送邮件

try

{

     SmtpMail.Send(objMailMessage);

     MessageBox.Show("Sended!");

}

catch (FormatException ex)

{

      MessageBox.Show(ex.Message);

}

 

第二种方法,就是在.net2.0及以后版本中提供了SmtpClient对象,使用起来比较方便,需要引入using System.Net.Mail;

try

{

      string from = "496775119@qq.com";

      string to = "bai.mingjiang@gmail.com";

      string subject = "邮件发送标题:你好";

      string body = "邮件发送标内容:测试一下是否发送成功!将附件附加到邮件消息对象中";

      string mailServerName = "smtp.qq.com";    //新浪的是smtp.sina.com

 

     using (MailMessage message = new MailMessage(from, to, subject, body))

{

SmtpClient mailClient = new SmtpClient(mailServerName);

          mailClient.Port = 25;

          mailClient.UseDefaultCredentials = false;

          mailClient.Credentials = new NetworkCredential("496775119@qq.com", "**密码^_^**");

//添加验证信息,用户名及密码,这里说明下,有的邮箱用户名是@前半部分的,有的是全的

          mailClient.Send(message);

}

         MessageBox.Show("Send!");

}

catch (FormatException ex)

{

         MessageBox.Show(ex.Message + "2");

}

catch (SmtpException ex)

{

         MessageBox.Show(ex.Message + "1");

}

 

遇到的几种问题:

1.      没有考虑到那些邮箱服务是否提供smtp服务,比如使用163,据说是163的邮箱有个政策,几月份之后的邮箱是不能用smtp的,这时抛出这样的信息:

服务器响应为: ó㻧±»ëø¶¨

 

2.      我使用的发送邮箱没有设置开通smtp服务,费了好大劲,这时抛出的异常是:

SMTP 服务器要求安全连接或客户端未通过身份验证。 服务器响应为: Authentication required

 

3.      smtp端口的问题,一般默认的都一样,可是gmail则不是的,具体的还没查清楚

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值