C# 通过smtp服务器进行邮件发送 MailHelper

C# 通过smtp服务器进行邮件发送 MailHelper.cs

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Net;
using System.IO;
using System.Text;
using System.Net.Mail;

/// <summary>
/// MailHelper 的摘要说明
/// </summary>
public class MailHelper
{
    public MailHelper()
    {
    }

    public string addres_mail = Common.GetConfig("mail", "MailConfig.xml");
    public string addres_smtp = Common.GetConfig("smtp", "MailConfig.xml");
    public string addres_mailpwd = Common.GetConfig("mailpwd", "MailConfig.xml");

    //发送邮件
    public static bool SendEmail(string userEmail, string subject, string content)
    {
        SendSms sms = new SendSms();
        bool bfg = false;
        try
        {
            WriteLog("C://Log//SMTP//", "发信邮箱:" + sms.addres_mail + " 发信密码:" + sms.addres_mailpwd + " 发信smtp:" + sms.addres_smtp + " Email:" + userEmail + "\r\n");
            MailMessage msg = new MailMessage();
            msg.IsBodyHtml = true;
            msg.From = new MailAddress(sms.addres_mail, "越界门户网站-密码找回", Encoding.GetEncoding("utf-8"));
            msg.To.Add(userEmail);
            msg.BodyEncoding = Encoding.GetEncoding("utf-8");
            msg.SubjectEncoding = Encoding.GetEncoding("utf-8");
            msg.Subject = subject;
            msg.Body = content;
            //// 添加附件
            string sfile = "附件地址";
            mail.Attachments.Add(new Attachment(sfile));

            SmtpClient mail = new SmtpClient();//实例
            mail.Host = sms.addres_smtp;     //发信主机
            mail.Port = 25;
            mail.UseDefaultCredentials = true;
            mail.Credentials = new NetworkCredential(sms.addres_mail, sms.addres_mailpwd);
            mail.Send(msg);
            bfg = true;
        }
        catch (Exception ex)
        {
            WriteLog("C://Log//Error//", "错误信息 Message:" + ex.Message + "  Source:" + ex.Source + " StackTrace:" + ex.StackTrace + "\r\n");
        }

        return bfg;
    }

    /// <summary>
    /// 写日志
    /// </summary>
    public static void WriteLog(string LogPath, string msg)
    {

        try
        {
            string toFileFoder = LogPath;
            string toFileFullPath = LogPath + " " +
                DateTime.Now.ToString("yyyyMMdd") + ".Log";
            DirectoryInfo di = new DirectoryInfo(toFileFoder);
            if (!di.Exists)
            {
                di.Create();
            }
            System.IO.StreamWriter sw = System.IO.File.AppendText(toFileFullPath);
            sw.WriteLine(msg);
            sw.Close();
        }
        catch
        { }
    }
}
时间: 2024-07-30 13:42:48

C# 通过smtp服务器进行邮件发送 MailHelper的相关文章

Laravel5.5 邮件驱动使用 SMTP 驱动实现邮件发送

laravel5.5 邮件驱动 Laravel 支持多种邮件驱动,包括 smtp.Mailgun.Maildrill.Amazon SES.mail 和 sendmail.Mailgun . Maildrill 都是第三方邮件服务.mail 驱动使用 PHP 提供的 mail 函数.sendmail 驱动通过 Sendmail/Postfix(Linux)提供的命令发送邮件,smtp 驱动使用支持 ESMTP 的 SMTP 服务器发送邮件.mail 不安全,sendmail 需要安装配置 Sen

[教程] Windows Server 2008 R2架设SMTP服务器发送邮件教程

Windows Server 2008 R2 架设SMTP服务器实现邮件发送 目的:架设SMTP服务器实现邮件发送. 一.域名设置 添加“邮件交换记录(MX)”: Newjs.cn                目标主机:IP地址 添加“主机名”: Mail.newjs.cn                IP地址 Smtp.newjs.cn                IP地址 二.Windows Server 2008 R2服务器本地配置 1.进入“控制面板”——“管理工具”——“服务器管

.NET开发邮件发送功能的全面教程(含邮件组件源码)

ref: http://www.cnblogs.com/heyuquan/p/net-batch-mail-send-async.html 今天,给大家分享的是如何在.NET平台中开发"邮件发送"功能.在网上搜的到的各种资料一般都介绍的比较简单,那今天我想比较细的整理介绍下: 1)         邮件基础理论知识 2)         邮件发送相关.NET类库 3)         介绍我开发的一个发送邮件的小组件(MailHelper) 4)         MailHelper组

python邮件发送

在基于互联网的应用中,程序经常需要自动地发送电子邮件.如:一个网站的注册系统会在用户注册时发送一封邮件来确认注册:当用户忘记登陆密码的时候,通过邮件来取回密码.smtplib模块是python中smtp(简单邮件传输协议)的客户端实现.我们可以使用smtplib模块,轻松的发送电子邮件.下面的例子用了不到十行代码来发送电子邮件: #coding=gbk import smtplib smtp = smtplib.SMTP() smtp.connect("smtp.yeah.net", 

Linux 上使用 Gmail SMTP 服务器发送邮件通知

导读 假定你想配置一个 Linux 应用,用于从你的服务器或桌面客户端发送邮件信息.邮件信息可能是邮件简报.状态更新(如 Cachet).监控警报(如 Monit).磁盘时间(如 RAID mdadm)等等.当你要建立自己的 邮件发送服务器 传递信息时 ,你可以替代使用一个免费的公共 SMTP 服务器,从而避免遭受维护之苦. 谷歌的 Gmail 服务就是最可靠的 免费 SMTP 服务器 之一.想要从应用中发送邮件通知,你仅需在应用中添加 Gmail 的 SMTP 服务器地址和你的身份凭证即可.

设置SMTP服务器

一.SMTP的物理目录 安装好SMTP服务器后, 会在系统盘的\Inetpub\mailboot目录下建立如下7个文件夹. Badmail:用来存放无法传送的邮件, 一般此文件夹中的邮件都是由于地址错误从而无法送到的.为节省磁盘空间,管理员可定时清理该文件夹. Drop:用来保存本地邮件的文件夹.此文件夹中的每个文件的文件扩展名都是.elm,每一个文件代表一封邮件. Pickup:用来保存所有要传送的邮件.SMTP服务器会定期检查该文件夹,一旦发现有信件就会立即试图发送.如果所有的信件都发送完毕

IntelliJ IDEA 2017版 spring-boot 2.0.3 邮件发送搭建,概念梳理 (一)

邮件发送功能总结        第一部分 背景 一.使用场景 (1)注册验证 注册各大网站,通常需要输入邮件地址,在注册成功后,会发送一封邮箱验证的邮件,点击确认,证明这个邮箱是用户自己的 (2)网站营销 公司运营做活动的时候,提前几天给用户发邮件,提醒老用户在活动时间参加活动. (3)安全的最后一道防线 一个网站好久不用的时候,会忘记密码,这个时候需要找回密码,很多种找回方式,最常用的找回方式就是通过邮箱找回密码. 首先,在网站输入邮箱,系统会根据注册的邮箱发送一封邮件,根据邮件中的地址,可以

ASP.NET Core中使用MialKit实现邮件发送

# 导包 首先我们需要导入 MailKit NuGet包,NuGet安装包命令在下方拓展介绍中. # 引用命名空间 using MailKit.Net.Smtp; using MimeKit; # 邮件发送帮助类 /// <summary> /// 发送邮件 /// </summary> /// <param name="Name">发件人名字</param> /// <param name="receive"&

python smtp 通过MIMEText类 发送HTML格式的邮件

由于纯文本的邮件内容已经不能满足多样化的需求,主要介绍通过引入mail.mime的MIMEText 类来实现支持HTML格式的邮件,支持所有HTML格式的元素,包括表格,图片,动画,css样式,表单等.(参考刘老师文献) 案例中收集的是最简单的服务器硬件信息,通过smtp将信息发到收件人邮箱,大家可以根据自己的需求收集所需要的信息(比如CPU百分比,硬盘剩余百分比,内存使用百分比,并设定阈值,当硬盘剩余空间不足10%,发送邮件通知管理员及时处理) #!/usr/bin/env python #c