• [C#]实现简单发送邮件


    string mailContent="邮件内容";
    MailMessage msg 
    = new System.Net.Mail.MailMessage();
    msg.To.Add(
    "******@gmail.com"); //收件人

    //发件人信息
    msg.From = new MailAddress("*****@gmail.com""发送人姓名", System.Text.Encoding.UTF8);
    msg.Subject 
    = "这是测试邮件";   //邮件标题
    msg.SubjectEncoding = System.Text.Encoding.UTF8;    //标题编码
    msg.Body = mailContent; //邮件主体
    msg.BodyEncoding = System.Text.Encoding.UTF8;
    msg.IsBodyHtml 
    = true;  //是否HTML
    msg.Priority = MailPriority.High;   //优先级
    SmtpClient client = new SmtpClient();

    //设置GMail邮箱和密码 
    client.Credentials = new System.Net.NetworkCredential("帐号@gmail.com""密码");
    client.Port 
    = 587;
    client.Host 
    = "smtp.gmail.com";
    client.EnableSsl 
    = true;
    object userState = msg;
    try
    {
        client.Send(msg);
        MessageBox.Show(
    "发送成功");
    }
    catch (Exception ex)
    {
        MessageBox.Show(ex.Message, 
    "发送邮件出错");
    }

    这里的重点是邮箱身份验证那个地方,一定不能写错,否则,邮件发送不出去。到这里,似乎是大功告成了,但是,你会发现,相同的程序,在某些机器上可以发送 成功,在某些机器上发送总是失败,是系统的原因?似乎不是,因为相同的系统,也是有的发送成功,有的发送失败。那是,框架的原因?似乎也不是。
    这里就有一个很令人迷惑的现象出现,同样的系统,同样的框架,还是有的能发送成功,有的发送失败。失败的具体原因说是邮件标头编码有错误。那么,我们去掉Subject,不写,用默认的可以吗?也是一样的。

    简单总结一下:
    1、使用SmtpClient发送电子邮件是很简单的,只要正确创建了MailMessage对象和SmtpClient就可以很容易的发送出去电子邮件。
    2、如果电子邮件服务器需要身份验证【似乎现在都需要身份验证,除非自己配置的】,注意下面这句话:
    smtpClient.Credentials = new System.Net.NetworkCredential("帐号@gmail.com", "密码");
    3、机器名不能使用中文。 

     

    转自:http://www.cnblogs.com/xieqixiang/archive/2009/08/05/1539611.html

  • 相关阅读:
    php投票系统
    php登陆和注册
    php常见报错
    session和cookie的区别
    php加密方法有哪些
    链接数据库封装类
    php数据库批量删除
    三傻大闹宝莱坞
    巴霍巴利王
    布拉德的中年危机
  • 原文地址:https://www.cnblogs.com/lovebread/p/1609367.html
Copyright © 2020-2023  润新知