网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > ASP.NET技巧
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.Asp.Net2.0中实现多任务异步页的.
..Net程序如何防止被注入(整站通用.
..NET 3.x新特性之自动属性及集合.
.最新版FreeTextBox(版本3.1.6)在.
.一些关于SQL2005+ASP.NET2.0的问.
.ASP.NET AJAX正式版带来的Valida.
.ASP.NET 2.0 多文件上传小经验 .
.爬虫如何抓取到Asp.Net中-doPost.
..net开发投票机的思路.
.调用PanelDesigner类时出现找不到.
.使用asp.net2.0中的SiteMap中的一.
.关于Asp.net中使用以下代码导出E.
.ASP.net实现无扩展名的URL重写。.
.SQL存储过程在.NET数据库中的应用.
.DataGrid 的 全选/取消全选 控制.
.Asp.net给站点某目录增加Aspnet用.
.在VS2003+IE7.0下调试asp.net权限.
.从ASP.NET 1.1升级到ASP.NET 2.0.
.ASP.NET与MySQL数据库简明图示入.
..Net2.0读取应用程序配置节.

通过System.Web.Mail程序发邮件

发表日期:2006-5-26


  在.net 1.1里面,如何用程序控制来发送电子邮件。比如,网站用户注册成功后,给注册用户自动发一封邮件,提示用户的注册信息。再则,有时候需要每天定时的把一个报表发给固定的几个人。综合起来需要解决如下的几个问题:
  1、SMTP服务器身份认证。
  2、收件人为多人时,怎么发送。
  3、发送邮件附件。

实现程序如下:

  为了使用System.Web.Mail,在名字空间里引用:
  using System.Web.Mail;

  定义一个发送邮件的过程

 

        /**//// <summary>
        /// 发送电子邮件邮件
        /// </summary>
        /// <param name="to">接收电子邮件地址</param>
        /// <param name="subject">邮件主题</param>
        /// <param name="body">邮件正文</param>
        /// <param name="mailatta">附件</param>
        public void SendMail(string to,string subject,string body,MailAttachment mailatta)
        {   

            MailMessage m_Mail = new MailMessage();
            //定义SMTP服务器的名称
            SmtpMail.SmtpServer = "mail.13590.com";

            //定义SMTP邮件服务器需要身份认证
            m_Mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", "1");
            //认证的用户名
            m_Mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername", "username");
            //认证密码
           m_Mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword","password");

            //定义邮件的发送地址
            m_Mail.From="\"秋雨\"<username@13590.com>";           

            //定义邮件的接收地址
            m_Mail.To = to.ToString();

            //定义邮件的暗送地址
             m_Mail.Bcc="bcc@13590.com";
            //定义邮件的抄送地址
             m_Mail.Cc = "cc@13590.com";
            //定义邮件的主题
            m_Mail.Subject = subject;
            //定义邮件的主体
            m_Mail.Body = body;
            //'邮件以 HTML的格式发送
            m_Mail.BodyFormat = MailFormat.Text;
            //定义邮件的有限级,在此设定为高
            m_Mail.Priority = MailPriority.High;
            //  给发送的邮件附加上一个附件
            if (mailatta!=null)
            {
                m_Mail.Attachments.Add(mailatta);
            }
            try
            {
                SmtpMail.Send(m_Mail);
            }
            catch
            {
                //邮件发送有错
                Memo1.Text=Memo1.Text + subject;                   
            }           
        }
注意邮件的地址 
    "\"秋雨\"<username@13590.com>";
    前面是显示的名称,后面是真实的Email地址 ,如果收件人地址为多人,以“;” 隔开,例如:
   "秋雨"<username@13590.com>;"管理员"<sys@13590.com>          注意使用转义字符。

我们使用程序来调用


        private void button_Click(object sender, System.EventArgs e)
        {
       
            string MailAddr="\"秋雨\"<username@13590.com>;\"管理员\"<sys@13590.com> ";
            string Subject="请查收统计报表";
            string MailBody="Test";
            string PathMailAtta=@"C:\统计报表.xls";

            MailAttachment mailatta;
            try
            {
                mailatta= new MailAttachment(PathMailAtta);
   
            }
            catch
            {
                Memo1.Text=Memo1.Text+PathMailAtta+"有异常,检查是否打开";
                return;                   
            }
            SendGroupMail(MailAddr,Subject,MailBody,mailatta);
        }
以上程序在VS.Net2003,Windows 2003(SP1)平台下测试通过。

上一篇:在ASP.NET里得到网站的域名 人气:6049
下一篇:在ASP.NET Atlas中调用Web Service—创建Mashup调用远端Web Service(Yahoo!天气实例) 人气:6070
浏览全部System.Web.Mail的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐