vs 2003 jmail发送邮件 内容可有图片

这里是用jmail发的,  里面主要是一个正则表达式来把图片区分开作为内容附件发送,所以说正则很NB,就这么一句话能做这么个大事,!当时愁死我了!!!!

#region sendmail
  public string SendMail(string sBody,string sSubject,string sMailto,ArrayList aMailcc,string mailfrom,string membername)
  {
   string sErrMessage="";
   //string isSendMail=System.Configuration.ConfigurationSettings.AppSettings["isSendMail"];
       
   jmail.Message jmail= new jmail.MessageClass();
            jmail.ContentTransferEncoding="base64";
  
   //郵件格式txt或html
   //jmail.ContentType = "text/html";
   jmail.Charset = "big5";
   //jmail.Charset = "gb2312";
   jmail.ISOEncodeHeaders = true;
   //發送人郵件地址;
   jmail.From = mailfrom;   //  '改成管理員郵件;
   //發送人姓名;
   jmail.FromName = membername;
   //郵件主題
   jmail.Subject = sSubject;
   //身份驗證的用戶名;
   jmail.MailServerUserName = myServer.Name;
   //用戶密碼
   jmail.MailServerPassWord = myServer.Password;
   //添加收件人
   jmail.AddRecipient(sMailto.Trim(),sMailto.Trim(),null);
   //string contentid = jmail.AddAttachment(Server.MapPath("UpImages/f-di.gif"),true,"image/jpg");
   for(int ic = 0;ic<aMailcc.Count;ic++)
   {
    jmail.AddRecipientCC(aMailcc[ic].ToString(),aMailcc[ic].ToString(),null);     //添加抄送人
   }
   Regex   re  =   new   Regex("<[img|IMG].+?src=[/"|']?([^/"]+?)[/"|']?(?: .*?>|>)");  
           
   string s1 = "";
           
   MatchCollection   mc;  
   mc=re.Matches(sBody);  
   for   (int   i=0;i   <  mc.Count;i++)  
   {  
    s1 = mc[i].Groups[1].Value ;
    string path = Server.MapPath(s1);
       string contentid = jmail.AddAttachment(path,true,"image/jpg");
    string replaced = "cid:"+contentid;
    sBody = Regex.Replace(sBody, mc[i].Groups[1].Value, replaced);
   }

  
   jmail.HTMLBody = sBody;

 

   try
   {
    
     jmail.Send(myServer.MailServer,false);
     //'清除資源
     //jmail.Close();
    
   }
   catch(Exception ex)
   {
    sErrMessage="郵件傳送失敗:" + ex.Message ;
   }

   return sErrMessage;

  }

  public string SendMail(string sBody,string sSubject,string sMailto,string mailfrom,string membername)
  {
   ArrayList aMailcc =new ArrayList();
   return SendMail(sBody,sSubject,sMailto,aMailcc,mailfrom,membername);
  }

  #endregion 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值