SSSSSSSSSSSSSSSSSSSSSSSSOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOSSSSSSSSSSSSSSSSSSSSSS

解决方案 »

  1.   

    using System;
    using System.Text;
    using System.IO;
    using System.Net;
    using System.Net.Sockets;
    using System.Collections;namespace Lion.Web.Mail
    {
    #region AspNetPager Server Control /// <summary>
    /// 邮件可以通过 Microsoft Windows 2000 中内置的 SMTP 邮件服务或任意 SMTP 服务器来传送
    /// </summary>
    public class SmtpMail
    { private string enter="\r\n"; /// <summary>
    /// 设定语言代码,默认设定为GB2312,如不需要可设置为""
    /// </summary>
    private string _charset="GB2312"; /// <summary>
    /// 发件人地址
    /// </summary>
    private string _from=""; /// <summary>
    /// 发件人姓名
    /// </summary>
    private string _fromName=""; /// <summary>
    /// 回复邮件地址
    /// </summary>
    ///public string ReplyTo=""; /// <summary>
    /// 收件人姓名
    /// </summary>
    private string _recipientName=""; /// <summary>
    /// 收件人列表
    /// </summary>
    private Hashtable Recipient=new Hashtable(); /// <summary>
    /// 邮件服务器域名
    /// </summary>
    private string mailserver=""; /// <summary>
    /// 邮件服务器端口号
    /// </summary>
    private int mailserverport=25; /// <summary>
    /// SMTP认证时使用的用户名
    /// </summary>
    private string username=""; /// <summary>
    /// SMTP认证时使用的密码
    /// </summary>
    private string password=""; /// <summary>
    /// 是否需要SMTP验证
    /// </summary>
    private bool ESmtp=false; /// <summary>
    /// 是否Html邮件
    /// </summary>
    private bool _html=false;
    /// <summary>
    /// 邮件附件列表
    /// </summary>
    private IList Attachments; /// <summary>
    /// 邮件发送优先级,可设置为"High","Normal","Low"或"1","3","5"
    /// </summary>
    private string priority="Normal"; /// <summary>
    /// 邮件主题
    /// </summary>
    private string _subject; /// <summary>
    /// 邮件正文
    /// </summary>
    private string _body;
            
    /// <summary>
    /// 密送收件人列表
    /// </summary>
    ///private Hashtable RecipientBCC=new Hashtable(); /// <summary>
    /// 收件人数量
    /// </summary>
    private int RecipientNum=0; /// <summary>
    /// 最多收件人数量
    /// </summary>
    private int recipientmaxnum=5; /// <summary>
    /// 密件收件人数量
    /// </summary>
    ///private int RecipientBCCNum=0; /// <summary>
    /// 错误消息反馈
    /// </summary>
    private string errmsg; /// <summary>
    /// TcpClient对象,用于连接服务器
    /// </summary>
    private TcpClient tc; /// <summary>
    /// NetworkStream对象
    /// </summary>
    private NetworkStream ns;

    /// <summary>
    /// 服务器交互记录
    /// </summary>
    private string logs=""; /// <summary>
    /// SMTP错误代码哈希表
    /// </summary>
    private Hashtable ErrCodeHT = new Hashtable(); /// <summary>
    /// SMTP正确代码哈希表
    /// </summary>
    private Hashtable RightCodeHT = new Hashtable();
    /// <summary>
    /// 初始化 <see cref="Lion.Web.Mail.SmtpMail"/> 类的新实例
    /// </summary>
    public SmtpMail()
    {
    Attachments = new System.Collections.ArrayList();
    } #region Properties
    /// <summary>
    /// 邮件主题
    /// </summary>
    public string Subject
    {
    get
    {
    return this._subject;
    }
    set
    {
    this._subject = value;
    }
    } /// <summary>
    /// 邮件正文
    /// </summary>
    public string Body
    {
    get
    {
    return this._body;
    }
    set
    {
    this._body = value;
    }
    }
    /// <summary>
    /// 发件人地址
    /// </summary>
    public string From
    {
    get
    {
    return _from;
    }
    set
    {
    this._from = value;
    }
    } /// <summary>
    /// 设定语言代码,默认设定为GB2312,如不需要可设置为""
    /// </summary>
    public string Charset
    {
    get
    {
    return this._charset;
    }
    set
    {
    this._charset = value;
    }
    } /// <summary>
    /// 发件人姓名
    /// </summary>
    public string FromName
    {
    get
    {
    return this._fromName;
    }
    set
    {
    this._fromName = value;
    }
    } /// <summary>
    /// 收件人姓名
    /// </summary>
    public string RecipientName
    {
    get
    {
    return this._recipientName;
    }
    set
    {
    this._recipientName = value;
    }
    }

    /// <summary>
    /// 邮件服务器域名和验证信息
    /// 形如:"user:[email protected]:25",也可省略次要信息。如"user:[email protected]"或"www.server.com"
    /// </summary>
    public string MailDomain
    {
    set
    {
    string maidomain=value.Trim();
    int tempint; if(maidomain!="")
    {
    tempint=maidomain.IndexOf("@");
    if(tempint!=-1)
    {
    string str=maidomain.Substring(0,tempint);
    MailServerUserName=str.Substring(0,str.IndexOf(":"));
    MailServerPassWord=str.Substring(str.IndexOf(":")+1,str.Length-str.IndexOf(":")-1);
    maidomain=maidomain.Substring(tempint+1,maidomain.Length-tempint-1);
    } tempint=maidomain.IndexOf(":");
    if(tempint!=-1)
    {
    mailserver=maidomain.Substring(0,tempint);
    mailserverport=System.Convert.ToInt32(maidomain.Substring(tempint+1,maidomain.Length-tempint-1));
    }
    else
    {
    mailserver=maidomain; }
    } }
    } /// <summary>
    /// 邮件服务器端口号
    /// </summary>
    public int MailDomainPort
    {
    set
    {
    mailserverport=value;
    }
    }
      

  2.   

    /// <summary>
    /// SMTP认证时使用的用户名
    /// </summary>
    public string MailServerUserName
    {
    set
    {
    if(value.Trim()!="")
    {
    username=value.Trim();
    ESmtp=true;
    }
    else
    {
    username="";
    ESmtp=false;
    }
    }
    } /// <summary>
    /// SMTP认证时使用的密码
    /// </summary>
    public string MailServerPassWord
    {
    set
    {
    password=value;
    }
    } /// <summary>
    /// 邮件发送优先级,可设置为"High","Normal","Low"或"1","3","5"
    /// </summary>
    public string Priority
    {
    set
    {
    switch(value.ToLower())
    {
    case "high":
    priority="High";
    break; case "1":
    priority="High";
    break; case "normal":
    priority="Normal";
    break; case "3":
    priority="Normal";
    break; case "low":
    priority="Low";
    break; case "5":
    priority="Low";
    break; default:
    priority="Normal";
    break;
    }
    }
    } /// <summary>
    ///  是否Html邮件
    /// </summary>
    public bool Html
    {
    get
    {
    return this._html;
    }
    set
    {
    this._html = value;
    }
    }
    /// <summary>
    /// 错误消息反馈
    /// </summary>
    public string ErrorMessage
    {
    get
    {
    return errmsg;
    }
    } /// <summary>
    /// 服务器交互记录,如发现本组件不能使用的SMTP服务器,请将出错时的Logs发给我([email protected]),我将尽快查明原因。
    /// </summary>
    public string Logs
    {
    get
    {
    return logs;
    }
    } /// <summary>
    /// 最多收件人数量
    /// </summary>
    public int RecipientMaxNum
    {
    set
    {
    recipientmaxnum = value;
    }
    }
    #endregion #region Methods
    /// <summary>
    /// 添加邮件附件
    /// </summary>
    /// <param name="FilePath">附件绝对路径</param>
    public void AddAttachment(params string[] FilePath)
    {
    if(FilePath==null)
    {
    throw(new ArgumentNullException("FilePath"));
    }
    for(int i=0;i<FilePath.Length;i++)
    {
    Attachments.Add(FilePath[i]);
    }
    }

    /// <summary>
    /// 添加一组收件人(不超过recipientmaxnum个),参数为字符串数组
    /// </summary>
    /// <param name="Recipients">保存有收件人地址的字符串数组(不超过recipientmaxnum个)</param>
    public bool AddRecipient(params string[] Recipients)
    {
    if(Recipient==null)
    {
    Dispose();
    throw(new ArgumentNullException("Recipients"));
    }
    for(int i=0;i<Recipients.Length;i++)
    {
    string recipient = Recipients[i].Trim();
    if(recipient==String.Empty)
    {
    Dispose();
    throw(new ArgumentNullException("Recipients["+ i +"]"));
    }
    if(recipient.IndexOf("@")==-1)
    {
    Dispose();
    throw(new ArgumentException("Recipients.IndexOf(\"@\")==-1","Recipients"));
    }
    if(!AddRecipient(recipient))
    {
    return false;
    }
    }
    return true;
    } /// <summary>
    /// 发送邮件方法,所有参数均通过属性设置。
    /// </summary>
    public bool Send()
    {
    if(mailserver.Trim()=="")
    {
    throw(new ArgumentNullException("Recipient","必须指定SMTP服务器"));
    } return SendEmail();

    }
    /// <summary>
    /// 发送邮件方法
    /// </summary>
    /// <param name="smtpserver">smtp服务器信息,如"username:[email protected]:25",也可去掉部分次要信息,如"www.smtpserver.com"</param>
    public bool Send(string smtpserver)
    {
    MailDomain=smtpserver;
    return Send();
    }
    /// <summary>
    /// 发送邮件方法
    /// </summary>
    /// <param name="smtpserver">smtp服务器信息,如"username:[email protected]:25",也可去掉部分次要信息,如"www.smtpserver.com"</param>
    /// <param name="from">发件人mail地址</param>
    /// <param name="fromname">发件人姓名</param>
    /// <param name="to">收件人地址</param>
    /// <param name="toname">收件人姓名</param>
    /// <param name="html">是否HTML邮件</param>
    /// <param name="subject">邮件主题</param>
    /// <param name="body">邮件正文</param>
    public bool Send(string smtpserver,string from,string fromname,string to,string toname,bool html,string subject,string body)
    {
    MailDomain=smtpserver;
    From=from;
    FromName=fromname;
    AddRecipient(to);
    RecipientName=toname;
    Html=html;
    Subject=subject;
    Body=body;
    return Send();
    }
    #endregion #region Private Helper Functions /// <summary>
    /// 添加一个收件人
    /// </summary>
    /// <param name="Recipients">收件人地址</param>
    private bool AddRecipient(string Recipients)
    {
    if(RecipientNum<recipientmaxnum)
    {
    Recipient.Add(RecipientNum,Recipients);
    RecipientNum++;
    return true;
    }
    else
    {
    Dispose();
    throw(new ArgumentOutOfRangeException("Recipients","收件人过多不可多于 "+ recipientmaxnum  +" 个"));
    }
    } void Dispose()
    {
    if(ns!=null)ns.Close();
    if(tc!=null)tc.Close();
    } /// <summary>
    /// SMTP回应代码哈希表
    /// </summary>
    private void SMTPCodeAdd()
    {
    ErrCodeHT.Add("500","邮箱地址错误");
    ErrCodeHT.Add("501","参数格式错误");
    ErrCodeHT.Add("502","命令不可实现");
    ErrCodeHT.Add("503","服务器需要SMTP验证");
    ErrCodeHT.Add("504","命令参数不可实现");
    ErrCodeHT.Add("421","服务未就绪,关闭传输信道");
    ErrCodeHT.Add("450","要求的邮件操作未完成,邮箱不可用(例如,邮箱忙)");
    ErrCodeHT.Add("550","要求的邮件操作未完成,邮箱不可用(例如,邮箱未找到,或不可访问)");
    ErrCodeHT.Add("451","放弃要求的操作;处理过程中出错");
    ErrCodeHT.Add("551","用户非本地,请尝试<forward-path>");
    ErrCodeHT.Add("452","系统存储不足,要求的操作未执行");
    ErrCodeHT.Add("552","过量的存储分配,要求的操作未执行");
    ErrCodeHT.Add("553","邮箱名不可用,要求的操作未执行(例如邮箱格式错误)");
    ErrCodeHT.Add("432","需要一个密码转换");
    ErrCodeHT.Add("534","认证机制过于简单");
    ErrCodeHT.Add("538","当前请求的认证机制需要加密");
    ErrCodeHT.Add("454","临时认证失败");
    ErrCodeHT.Add("530","需要认证"); RightCodeHT.Add("220","服务就绪");
    RightCodeHT.Add("250","要求的邮件操作完成");
    RightCodeHT.Add("251","用户非本地,将转发向<forward-path>");
    RightCodeHT.Add("354","开始邮件输入,以<enter>.<enter>结束");
    RightCodeHT.Add("221","服务关闭传输信道");
    RightCodeHT.Add("334","服务器响应验证Base64字符串");
    RightCodeHT.Add("235","验证成功");
    }
    /// <summary>
    /// 将字符串编码为Base64字符串
    /// </summary>
    /// <param name="str">要编码的字符串</param>
    private string Base64Encode(string str)
    {
    byte[] barray;
    barray=Encoding.Default.GetBytes(str);
    return Convert.ToBase64String(barray);
    }
    /// <summary>
    /// 将Base64字符串解码为普通字符串
    /// </summary>
    /// <param name="str">要解码的字符串</param>
    private string Base64Decode(string str)
    {
    byte[] barray;
    barray=Convert.FromBase64String(str);
    return Encoding.Default.GetString(barray);
    }
      

  3.   

    ASP.net程序员
    电子邮箱:[email protected]  
    发布日期:2006-03-13 工作地点:广州市 
    招聘人数:3 学    历:大专 
    工作年限:二年以上 薪水范围:3000元-5000元/月 
     
    职位要求:
    1.熟悉.net上的b/s开发相关(c#,asp.net,javascript);
    2.熟悉sql server,熟悉sql,存储过程的编写;
    3.至少参与过一个完整项目编写的经验;
    4.热爱程序编写工作,有强烈的责任心和良好的团队合作精神,做事积极、主动;  公司介绍:
    VAS篮球互动社区 
    华仕体育是一家致力于推广年轻人喜爱的时尚体育运动的公司,目前公司以项目策划、活动管理、形象策划和互联网业务等服务项目为主营业务,05年推出的VASgame.com篮球互动社区是目前的核心业务,它不但提供一个为年轻人享受篮球运动所带来乐趣的互动平台,同时也是一个打造时尚明星的工厂,为活跃分子提供一条通往成功的星光大道。 目前我们的业务在不断的拓展中,希望广招愿意投身于时尚体育的栋梁之材,我们不限制学历,只看重能力! 
    有意者请将详细个人资料E-mail至或邮寄至本公司。 
    合则约见,勿电勿访。 
    更多招聘信息,欢迎登陆网站查看。 本公司尚有策划专员、客户服务专员等职位空缺。  
    联 系 方 式 筹办办公室:广州市工业大道南金碧都市广场49栋902
    邮政编码:510228
    电    话:(020)84044422
    电子邮箱:[email protected]
    电    话:(020)84065621
    公司网站:http://vasgame.com
      

  4.   

    怎么没有分阿!太长了,帖的麻烦。而且不能连续回复3次你到网上自己查吧,E—Mail 认证
      

  5.   

    .....你QQ  MSN 什么的多少啊发给我吧