ASP.NET C# 邮件发送一:利用Jmail组件发送邮件

最近刚好在整理自己的代码·以便review 所以刚好把以前列出来

此文说下用 Jmail 组件的邮件发送

基于 B/S 架构的邮件发送,讲下最常用最流行的一种方法,利用 jmail   组件, Google 搜索下载安装

安装完毕,新建 VS2005 网站项目,添加引用 浏览

C:/Program Files/Dimac/w3JMail4 目录的 jmail.dll 文件夹 确定 (至于如何添加引用 Baidu )确定

系统会自动创建 Bin 文件夹 并含有 Interop.jmail.dll 文件

邮件发送的 MailSender.aspx.cs 代码如下(经测试可以运行,决不发至少在本机不能有BUG的源码)

代码都有详细的注释

 

using  System;
using  System.Data;
using  System.Configuration;
using  System.Collections;
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  jmail;  // 引用

public   partial   class  System_MailSender : System.Web.UI.Page
{
    
protected   void  Page_Load( object  sender, EventArgs e)
    
{

    }

    
protected   void  SendBtn_Click( object  sender, EventArgs e)
    
{
        
string  RecieveAddress  =  Addresssee.Text;  // 收件者Email
        
// string MyAddress = PostMail.Text;
         string  EmailTheme  =  theme.Text;    // 邮件主题
         string  Content  =  EmailContent.Text;  // 邮件内容
        
// -------------------------------------------------------------------------------------------------
        Message jmailobj  =   new  Message();
        jmailobj.Logging 
=   true ;
        jmailobj.Silent 
=   true ;

        jmailobj.MailServerUserName 
=   " Test " ;    // 发信邮件服务器的帐号    因为我公司的邮件没有设密码    
        jmailobj.MailServerPassWord  =   " 123 " ;    // 密码   
        
// 例如 163的邮箱 有户名 为 Test 密码123 


        jmailobj.Body 
=  Content;             // 上面定义的EmailContent
        jmailobj.Charset  =   " gb2312 " ;
        jmailobj.Subject 
=  EmailTheme;
        jmailobj.From 
=   " 自个的Email " // 例如Eric@163.com
        jmailobj.FromName  =   " 邮件测试 " ;
        jmailobj.AddRecipient(RecieveAddress, 
" Name " " A " );       // 收件人地址   

        
// jmailobj.AddRecipientBCC("test@hotmail.com","ok");          // 抄送,一般用不到
        
// jmailobj.AddRecipientBCC("test@sohu.com.cn","ok");   

        jmailobj.Priority 
=   1 ;

        
if  (jmailobj.Send( " shex01.sh.deltagroup.com " false ))   // shex01.sh.deltagroup.com  发送邮件服务器
         {
            Label1.Text 
=   " Send to Success " ;
        }

        
else
        
{
            Label1.Text 
=   " Send to faild! " ;
        }
   
    }

}

MailSender.aspx Html 代码如下 :

 

< html  xmlns ="http://www.w3.org/1999/xhtml"   >
< head  runat ="server" >
    
< title > 无标题页 </ title >
</ head >
< body >
    
< form  id ="form1"  runat ="server" >
    
< div >
        
< table  style ="width: 599px" >
            
< tr >
                
< td  style ="width: 97px; text-align: right; height: 26px;" >
                    收件人地址:
</ td >
                
< td  style ="width: 108px; height: 26px;" >
                    
< asp:TextBox  ID ="Addresssee"  runat ="server"  Width ="112px" ></ asp:TextBox ></ td >
                
< td  style ="height: 26px" >
                
</ td >
            
</ tr >
            
< tr >
                
< td  style ="width: 97px; text-align: right" >
                    发件人地址:
</ td >
                
< td  style ="width: 108px" >
                    
< asp:TextBox  ID ="PostMail"  runat ="server"  Width ="112px" ></ asp:TextBox ></ td >
                
< td >
                
</ td >
            
</ tr >
            
< tr >
                
< td  style ="width: 97px; text-align: right" >
                    主题:
</ td >
                
< td  style ="width: 108px" >
                    
< asp:TextBox  ID ="theme"  runat ="server"  Width ="112px" ></ asp:TextBox ></ td >
                
< td >
                
</ td >
            
</ tr >
            
< tr >
                
< td  style ="width: 97px; height: 124px; text-align: right" >
                    内容:
</ td >
                
< td  colspan ="2"  style ="height: 124px" >
                    
< asp:TextBox  ID ="EmailContent"  runat ="server"  Height ="237px"  TextMode ="MultiLine"  Width ="487px" ></ asp:TextBox ></ td >
            
</ tr >
            
< tr >
                
< td  style ="width: 97px; height: 39px; text-align: right" >
                
</ td >
                
< td  style ="width: 108px; height: 39px" >
                    
< asp:Button  ID ="Button1"  runat ="server"  OnClick ="Button1_Click"  Text ="发送邮件"  Width ="84px"   />
                    
&nbsp;   &nbsp;
                    
< asp:Label  ID ="Label1"  runat ="server"  Text ="Label"  Width ="379px" ></ asp:Label ></ td >
                
< td  style ="height: 39px" >
                
</ td >
            
</ tr >
        
</ table >
        
< br  />
        
< rsweb:reportviewer  id ="ReportViewer1"  runat ="server"  height ="100px"  width ="597px" ></ rsweb:reportviewer >
        
< br  />
    
    
</ div >
    
</ form >
</ body >
</ html >

ASP.NET C# 邮件发送二:利用 C# Mail 类发送邮件 会有源码下载

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
jmail  jmail是一种服务器端的邮件发送组件,和个人用的客户端邮件软件不一样的。jmail是在服务器上给程序用来邮件用的,除了软件编程人员,其他人一般平常用不上。   jmail是一个第三方邮件操作组件,通常位于web服务器端,和站点程序紧密配合来接收及提交邮件邮件服务器的控件,让网站拥有发送邮件既接收邮件的功能   与此相同的还有CDONTS.NewMail,Persits.MailSender,IISmail.Iismail等等,他们唯一区别就是jmail只需要注册一个dll组件即可被调用,而其他则需要在iis上设置布smtp服务器   (1)Body(信件正文) : 字符串   如:JMail.Body = "这里可以是用户填写的表单内容,可以取自Form。"   (2)Charset(字符集,缺省为"US-ASCII") : 字符串   如:JMail.Charset = "US-ASCII"   (3)ContentTransferEncoding : 字符串   指定内容传时的编码方式,缺省是"Quoted-Printable"   如:JMail.ContentTransferEncoding = "base64"   (4)ContentType(信件的contentype. 缺省是"text/plain") : 字符串   如果你以HTML格式发送邮件, 改为"text/html"即可。   如:JMail.ContentType = "text/html"   (5)Encoding : 字符串   设置附件编码方式(缺省是"base64)。 可以选择使用的是"base64", "uuencode" or "quoted-printable" 如:JMail.Encoding = "base64"   (6)Log(Jmail创建的日志,前提loging属性设置为true,见下面) : 字符串   如:使用Response.Write( JMail.Log )语句列出日志信息。   (7)Logging(是否使用日志) : 布尔型   如:JMail.Logging = true   (8)Recipients : 字符串   只读属性,返回所有收件人   如:Response.Write( "" + JMail.Recipients + "" );   (9)ReplyTo(指定别的回信地址) : 字符串   如:JMail.ReplyTo = "qiao198@hotmail.com"   (10)Sender( 件人的邮件地址) : 字符串   如:JMail.Sender = "qiao198@21cn.com"   (11)SenderName(件人的姓名) : 字符串   如:JMail.SenderName = "一克"   (12)ServerAddress(邮件服务器的地址) : 字符串   你可以指定多个服务器,用分号点开。可以指定端口号。   如果serverAddress保持空白,JMail会尝试远程邮件服务器,然后直接发送到服务器上去。   如:JMail.ServerAddress = "mail.21cn.net.cn"   (13)Subject(设定邮件的标题,可以取自Form。):字符串   如:JMail.Subject = "客户反馈表单"   (14)添加文件附件到邮件   如:JMail.AddAttachment( "c:anyfile.zip" )   (15)AddCustomAttachment( FileName, Data )   添加自定义附件.   如:JMail.AddCustomAttachment( "anyfile.txt", "Contents of file" );   (16)AddHeader( Header, Value )   添加用户定义的信件标头。   如:JMail.AddHeader( "Originating-IP","192.158.1.10" );   (17)AddRecipient(收件人):字符串   如:JMail.AddRecipient( "qiao198@hotmail.com" );   (18)AddRecipientBCC( Email ),密件收件人:   如:JMail.AddRecipientBCC( "qiao198@hotmail.com" );   (19)AddRecipientCC( Email ) ,抄收件人:   如:JMail.AddRecipientCC( "" )   (20)AddURLAttachment( URL, 文档名)   下载并添加一个来自url的附件. 第二个参数"文档名", 用来指定信件收到后的文件名。   如:JMail.AddURLAttachment( "http://www.chinabs.net/jmail.zip", "jmail" )   (21)AppendBodyFromFile( 文件名) ,将文件作为信件正文:   如:JMail.AppendBodyFromFile( "c:anyfile.txt" )   (22)AppendText( Text )   追加信件的正文内容,比如增加问候语或者其它信息。   如:JMail.AppendText( "欢迎访问本站!" )   (23)Close() ,强制JMail关闭缓冲的与邮件服务器的连接:   如:JMail.Close()   (24)发送【调用格式:objJMail.Send(SMTPServerAddress[:Port])】   例:JMail.Send("smtp.163.com")   Jmail具有以下特点:   (1)可以发送附件;   (2)详细日志能力,便于你查看问题所在;   (3)设置邮件发送的优先级;   (4)支持多种格式的邮件发送,比如说以HTML或者TXT的方式发送邮件。这是个免费的组件。   (5)密件发送/(CC)抄/紧急信件发送能力;   (6)最关键的就是--免费的组件,不必花钱,所以非常值得使用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值