JMail 发送邮件(包含附件)
//删除文件方法
public static void DeleteFile(string FileName)
{
string filePath = FileName;
try
{
if(File.Exists(filePath))
{
File.Delete(filePath);
}
}
catch{}
finally {}
}
private void btnSave_Click(object sender, System.EventArgs e)
{
jmail.Message Jmail=new jmail.Message();
DateTime t=DateTime.Now;
//邮件主体内容
string Subject= txttitle.Text.ToString();
string body= txtcontent.Text.ToString();
string FromEmail = txtFromEmail.Text.ToString();
string ToEmail= txtToEmail.Text.ToString();
//Silent属性:如果设置为true,JMail不会抛出例外错误. JMail. Send( () 会根据操作结果返回true或false
Jmail.Silent=false;
//Jmail创建的日志,前提loging属性设置为true
Jmail.Logging=true;
//字符集,缺省为"US-ASCII"
Jmail.Charset = dlistCharset.SelectedValue.ToString();
//信件的contentype. 缺省是"text/plain") : 字符串如果你以HTML格式发送邮件, 改为"text/html"即可。
Jmail.ContentType = "text/html";
//添加收件人
Jmail.AddRecipient(ToEmail,"","");
Jmail.From= FromEmail;
Jmail.FromName= "广东原创动力文化传播有限公司";
//发件人邮件用户名
Jmail.MailServerUserName="test@21cn.com" ;
//发件人邮件密码
Jmail.MailServerPassWord="888888" ;
//设置邮件标题
Jmail.Subject=Subject;
//邮件添加附件
if(Session["udMail"]!=null)
{
string[] udMail = Session["udMail"].ToString().Split('|');
for(int i = 0;i<udMail.Length;i++)
{
string VauleItem = Request.PhysicalApplicationPath+@"UploadMail\"+udMail[i];
Jmail.AddAttachment( VauleItem,true,null);
}
}
//邮件内容
Jmail.Body=body;
//Jmail发送的方法
Jmail.Send("200.100.200.10",false);
Jmail.Close() ;
//需要删除用户上存的附件
if(Session["udMail"]!=null)
{
string[] udMail = Session["udMail"].ToString().Split('|');
for(int i = 0;i<udMail.Length;i++)
{
string VauleItem = Request.PhysicalApplicationPath+@"UploadMail\"+udMail[i];
DeleteFile(VauleItem);
}
}
Response.Write("<body bgColor=#eeeeee><table border=0 cellpadding=0 cellspacing=0 style=border-collapse: collapse bordercolor=#111111 width=100% height=270><tr><td width=100% height=270><p align=center><font size=2 color=#333333>邮件已经发送成功!</font></p><p align=center><font size=2 color=#333333><a href=SendMail.aspx style=text-decoration: none>返回</a></font></td></tr></table></body>");
Response.End();
}
public static void DeleteFile(string FileName)
{
string filePath = FileName;
try
{
if(File.Exists(filePath))
{
File.Delete(filePath);
}
}
catch{}
finally {}
}
private void btnSave_Click(object sender, System.EventArgs e)
{
jmail.Message Jmail=new jmail.Message();
DateTime t=DateTime.Now;
//邮件主体内容
string Subject= txttitle.Text.ToString();
string body= txtcontent.Text.ToString();
string FromEmail = txtFromEmail.Text.ToString();
string ToEmail= txtToEmail.Text.ToString();
//Silent属性:如果设置为true,JMail不会抛出例外错误. JMail. Send( () 会根据操作结果返回true或false
Jmail.Silent=false;
//Jmail创建的日志,前提loging属性设置为true
Jmail.Logging=true;
//字符集,缺省为"US-ASCII"
Jmail.Charset = dlistCharset.SelectedValue.ToString();
//信件的contentype. 缺省是"text/plain") : 字符串如果你以HTML格式发送邮件, 改为"text/html"即可。
Jmail.ContentType = "text/html";
//添加收件人
Jmail.AddRecipient(ToEmail,"","");
Jmail.From= FromEmail;
Jmail.FromName= "广东原创动力文化传播有限公司";
//发件人邮件用户名
Jmail.MailServerUserName="test@21cn.com" ;
//发件人邮件密码
Jmail.MailServerPassWord="888888" ;
//设置邮件标题
Jmail.Subject=Subject;
//邮件添加附件
if(Session["udMail"]!=null)
{
string[] udMail = Session["udMail"].ToString().Split('|');
for(int i = 0;i<udMail.Length;i++)
{
string VauleItem = Request.PhysicalApplicationPath+@"UploadMail\"+udMail[i];
Jmail.AddAttachment( VauleItem,true,null);
}
}
//邮件内容
Jmail.Body=body;
//Jmail发送的方法
Jmail.Send("200.100.200.10",false);
Jmail.Close() ;
//需要删除用户上存的附件
if(Session["udMail"]!=null)
{
string[] udMail = Session["udMail"].ToString().Split('|');
for(int i = 0;i<udMail.Length;i++)
{
string VauleItem = Request.PhysicalApplicationPath+@"UploadMail\"+udMail[i];
DeleteFile(VauleItem);
}
}
Response.Write("<body bgColor=#eeeeee><table border=0 cellpadding=0 cellspacing=0 style=border-collapse: collapse bordercolor=#111111 width=100% height=270><tr><td width=100% height=270><p align=center><font size=2 color=#333333>邮件已经发送成功!</font></p><p align=center><font size=2 color=#333333><a href=SendMail.aspx style=text-decoration: none>返回</a></font></td></tr></table></body>");
Response.End();
}
1 <IFRAME style="WIDTH: 493px; HEIGHT: 75px" border="0" name="I1" src="Upload_Mail.aspx" frameBorder="0"
2 scrolling="no"></IFRAME>
2 scrolling="no"></IFRAME>
private void Page_Load(object sender, System.EventArgs e)
{
//权限验证
if(Security.CheckLegal("605")==false)
{
Response.Redirect("../login.aspx");
Response.End();
}
if (!IsPostBack)
{
//没有附件的状态
dlistBound.Items.Clear();
ArrayList arr = new ArrayList();
arr.Add("--没有附件--");
dlistBound.DataSource = arr ;
dlistBound.DataBind();
P_size.Text = "0";
}
}
private void Upload_Click(object sender, System.EventArgs e)
{
if(myFile.PostedFile !=null)
{
HttpFileCollection files = HttpContext.Current.Request.Files;
HttpPostedFile postedFile = files[0];
string fileName = System.IO.Path.GetFileName(postedFile.FileName);
string path = Request.PhysicalApplicationPath+@"UploadMail\"+ fileName;
postedFile.SaveAs(path);
//数组对上存附件进行实时绑定
if((string)Session["udMail"]==null)
{
Session["udMail"] = fileName;
}
else
{
Session["udMail"] = (string)Session["udMail"]+"|"+fileName;
}
string[] udMail = Session["udMail"].ToString().Split('|');
ArrayList list = new ArrayList(udMail);
list.Reverse();
udMail=(string[])list.ToArray(typeof(string));
dlistBound.Items.Clear();
long dirsize=0;
for(int i = 0;i<udMail.Length;i++)
{
string IndexItem = udMail[i];
string VauleItem = Request.PhysicalApplicationPath+@"UploadMail\"+udMail[i];
dlistBound.Items.Add(new ListItem(IndexItem,VauleItem));
System.IO.FileInfo mysize = new System.IO.FileInfo(@VauleItem);
dirsize += System.Convert.ToInt32(mysize.Length/1024)+1;
}
P_size.Text = dirsize.ToString();
}
}
private void btnDel_Click(object sender, System.EventArgs e)
{
string trueDelfile = dlistBound.SelectedValue.ToString();
string Delfile = dlistBound.SelectedItem.ToString();
usageIO.DeletePath(trueDelfile);
if(Session["udMail"] != null)
{
int index = Session["udMail"].ToString().IndexOf("|");
if(index == -1)
{
Session["udMail"] = null;
dlistBound.Items.Clear();
dlistBound.Items.Add("--没有附件--");
P_size.Text = "0";
}
else
{
string[] udMail = Session["udMail"].ToString().Split('|');
ArrayList values = new ArrayList(udMail);
values.Remove(Delfile);
string s = null;
for(int i=0;i<values.Count;i++)
{
if(values.Count!=0)
{
s += values[i].ToString()+"|";
}
}
if(s!=""||s!=null)
{
s = s.TrimEnd('|');
}
Session["udMail"] = s;
string[] uMail = Session["udMail"].ToString().Split('|');
ArrayList list = new ArrayList(uMail);
list.Reverse();
uMail=(string[])list.ToArray(typeof(string));
dlistBound.Items.Clear();
long dirsize=0;
for(int i = 0;i<uMail.Length;i++)
{
string IndexItem = uMail[i];
string VauleItem = Request.PhysicalApplicationPath+@"UploadMail\"+uMail[i];
dlistBound.Items.Add(new ListItem(IndexItem,VauleItem));
System.IO.FileInfo mysize = new System.IO.FileInfo(@VauleItem);
dirsize += System.Convert.ToInt32(mysize.Length/1024)+1;
}
P_size.Text = dirsize.ToString();
}
}
}
{
//权限验证
if(Security.CheckLegal("605")==false)
{
Response.Redirect("../login.aspx");
Response.End();
}
if (!IsPostBack)
{
//没有附件的状态
dlistBound.Items.Clear();
ArrayList arr = new ArrayList();
arr.Add("--没有附件--");
dlistBound.DataSource = arr ;
dlistBound.DataBind();
P_size.Text = "0";
}
}
private void Upload_Click(object sender, System.EventArgs e)
{
if(myFile.PostedFile !=null)
{
HttpFileCollection files = HttpContext.Current.Request.Files;
HttpPostedFile postedFile = files[0];
string fileName = System.IO.Path.GetFileName(postedFile.FileName);
string path = Request.PhysicalApplicationPath+@"UploadMail\"+ fileName;
postedFile.SaveAs(path);
//数组对上存附件进行实时绑定
if((string)Session["udMail"]==null)
{
Session["udMail"] = fileName;
}
else
{
Session["udMail"] = (string)Session["udMail"]+"|"+fileName;
}
string[] udMail = Session["udMail"].ToString().Split('|');
ArrayList list = new ArrayList(udMail);
list.Reverse();
udMail=(string[])list.ToArray(typeof(string));
dlistBound.Items.Clear();
long dirsize=0;
for(int i = 0;i<udMail.Length;i++)
{
string IndexItem = udMail[i];
string VauleItem = Request.PhysicalApplicationPath+@"UploadMail\"+udMail[i];
dlistBound.Items.Add(new ListItem(IndexItem,VauleItem));
System.IO.FileInfo mysize = new System.IO.FileInfo(@VauleItem);
dirsize += System.Convert.ToInt32(mysize.Length/1024)+1;
}
P_size.Text = dirsize.ToString();
}
}
private void btnDel_Click(object sender, System.EventArgs e)
{
string trueDelfile = dlistBound.SelectedValue.ToString();
string Delfile = dlistBound.SelectedItem.ToString();
usageIO.DeletePath(trueDelfile);
if(Session["udMail"] != null)
{
int index = Session["udMail"].ToString().IndexOf("|");
if(index == -1)
{
Session["udMail"] = null;
dlistBound.Items.Clear();
dlistBound.Items.Add("--没有附件--");
P_size.Text = "0";
}
else
{
string[] udMail = Session["udMail"].ToString().Split('|');
ArrayList values = new ArrayList(udMail);
values.Remove(Delfile);
string s = null;
for(int i=0;i<values.Count;i++)
{
if(values.Count!=0)
{
s += values[i].ToString()+"|";
}
}
if(s!=""||s!=null)
{
s = s.TrimEnd('|');
}
Session["udMail"] = s;
string[] uMail = Session["udMail"].ToString().Split('|');
ArrayList list = new ArrayList(uMail);
list.Reverse();
uMail=(string[])list.ToArray(typeof(string));
dlistBound.Items.Clear();
long dirsize=0;
for(int i = 0;i<uMail.Length;i++)
{
string IndexItem = uMail[i];
string VauleItem = Request.PhysicalApplicationPath+@"UploadMail\"+uMail[i];
dlistBound.Items.Add(new ListItem(IndexItem,VauleItem));
System.IO.FileInfo mysize = new System.IO.FileInfo(@VauleItem);
dirsize += System.Convert.ToInt32(mysize.Length/1024)+1;
}
P_size.Text = dirsize.ToString();
}
}
}