// 下载附件 private void btnDownLoad_Click(object sender, EventArgs e) { if (lstViewMailList.SelectedItems.Count == 0) { MessageBox.Show("请先选择阅读的邮件!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } else if (lstViewMailList.SelectedItems[0].SubItems[3].Text == "无") { MessageBox.Show("该邮件没有附件", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } int index = lstViewMailList.SelectedItems[0].Index; messageMail = popClient.Messages[index + 1]; attachments = messageMail.Attachments; for (int i = 0; i < attachments.Count; i++) { attachment = attachments[i]; string attachName = attachment.Name; SaveFileDialog saveFileDialog = new SaveFileDialog(); saveFileDialog.FileName = attachName; saveFileDialog.Filter = "所有文件(*.*)|(*.*)"; if (saveFileDialog.ShowDialog() != DialogResult.OK) { continue; } string filepath = saveFileDialog.FileName; attachment.SaveToFile(filepath); MessageBox.Show("以保存:\r\n" + attachment.Name, "下载完毕", MessageBoxButtons.OK, MessageBoxIcon.Information); } }
private void dgvEmailInfo_CellClick(object sender, DataGridViewCellEventArgs e)//下载附件 { try { if (e.ColumnIndex == 2) { mailMessage = popMail.Messages[e.RowIndex + 1]; atts = mailMessage.Attachments; if (atts.Count != 0) { for (int k = 0; k < atts.Count; k++) { att = atts[k]; string attname = att.Name; saveFileDialog.FileName = attname;//令对话框的初始路径包含文件名 if (saveFileDialog.ShowDialog() == DialogResult.OK) { string mailPath = saveFileDialog.FileName.ToString(); //获取对话框中选好的路径 att.SaveToFile(mailPath); //将附件存储到相应路径 MessageBox.Show("下载成功", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); } } } } } catch { MessageBox.Show("下载失败", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
// 刷新邮件列表 private void btnRefreshMailList_Click(object sender, EventArgs e) { // 实例化邮件接收类POP3Class popClient = new POP3Class(); // 连接服务器 popClient.Connect(tbxUserMail.Text, txbPassword.Text, tbxPOP3Server.Text, 110); if (popClient != null) { if (popClient.Count > 0) { lstViewMailList.Items.Clear(); tbxMailboxInfo.Text = "共" + popClient.Count + "封邮件"; for (int i = 0; i < popClient.Count; i++) { messageMail = popClient.Messages[i + 1]; ListViewItem item = new ListViewItem(); item.SubItems.Add(messageMail.From); item.SubItems.Add(messageMail.Subject); attachments = messageMail.Attachments; if (attachments.Count > 0) { item.SubItems.Add(attachments.Count.ToString()); } else { item.SubItems.Add("无"); } item.SubItems.Add(messageMail.Date.ToString()); lstViewMailList.Items.Add(item); } } } }
private void transCode2(ref string[] MailAtts, jmail.Message mailmessage) { byte[] b; string transcode; jmail.Attachments attachments; jmail.Attachment attachment; attachments = mailmessage.Attachments; for (int i = 0; i < attachments.Count; i++) { try { attachment = attachments [i]; if (mailmessage.Text.IndexOf("name:=?UTF-8?B?") != -1 || mailmessage.Text.IndexOf("name: =?UTF-8?B?") != -1 || mailmessage.Text.IndexOf("name: =?utf-8?B?") != -1 )//解析邮件主题 { if (attachment.Name.IndexOf("=?UTF-8?B?") != -1 ) { transcode = attachment.Name.Substring(attachment.Name.IndexOf("=?UTF-8?B?") + 10); transcode = transcode.Substring(0, transcode.IndexOf("?="));//修改 b = Convert.FromBase64String(transcode); transcode = Encoding.GetEncoding("utf-8").GetString(b); MailAtts[i] = transcode; } else if (attachment.Name.IndexOf("=?utf-8?B?") != -1) { transcode = attachment.Name.Substring(attachment.Name.IndexOf("=?utf-8?B?") + 10); transcode = transcode.Substring(0, transcode.Length - 2); b = Convert.FromBase64String(transcode); transcode = Encoding.GetEncoding("utf-8").GetString(b); MailAtts[i] = transcode; } else { b = System.Text.Encoding.Default.GetBytes(attachment.Name); transcode = Encoding.GetEncoding("utf-8").GetString(b); MailAtts[i] = transcode; } } else { MailAtts [i] = attachment.Name; } } catch { MessageBox.Show("编码格式有问题"); } } }
private bool SendMails(string fromMail, string toMail, string ccMail, string bccMail, string subject, string subbody) { try { jmail.Message Jmail = new jmail.Message(); DateTime t = DateTime.Now; string Subject = subject; string body = subbody; string FromEmail = fromMail; string ToEmail = toMail; //Silent属性:如果设置为true,JMail不会抛出例外错误. JMail. Send( () 会根据操作结果返回true或false Jmail.Silent = true; //Jmail创建的日志,前提loging属性设置为true Jmail.Logging = true; //字符集,缺省为"US-ASCII" Jmail.Charset = "GB2312"; //信件的contentype. 缺省是"text/plain") : 字符串如果你以HTML格式发送邮件, 改为"text/html"即可。 //Jmail.ContentType = "Multipart/Mixed"; //添加收件人(若几个收件人就添加几行下面的代码) Jmail.AddRecipient(ToEmail, "", ""); //Jmail.AddRecipientCC,Jmail.AddRecipientBCC (抄送,密送,用法同Jmail.AddRecipient) Jmail.From = FromEmail; DataTable dt = BLL.CommonClass.CommonDataBLL.GetEmail(); if (dt.Rows.Count == 0) { return(false); } //发件人邮件用户名 Jmail.MailServerUserName = BLL.QuickPay.SecretSecurity.Decrypt3Des24Bit(dt.Rows[0]["UserName"].ToString(), new BLL.QuickPay.SecretSecurity().EmailKey); // "qc"; //发件人邮件密码 Jmail.MailServerPassWord = BLL.QuickPay.SecretSecurity.Decrypt3Des24Bit(dt.Rows[0]["Password"].ToString(), new BLL.QuickPay.SecretSecurity().EmailKey); //"zx001"; //设置邮件标题 Jmail.Subject = Subject; //邮件添加附件,(多附件的话,可以再加一条Jmail.AddAttachment( "c:\\test.jpg",true,null);)就可以搞定了。 ////[注]:加了附件,讲把上面的Jmail.ContentType="text/html";删掉。否则会在邮件里出现乱码。 //Jmail.AddAttachment("c:\\img200610311000250.jpg", true, null); ////邮件内容,(若为纯文本就改为Jmail.Body ) Jmail.Body = body; //Jmail发送的方法 Jmail.Send(BLL.QuickPay.SecretSecurity.Decrypt3Des24Bit(dt.Rows[0]["EmailAddress"].ToString(), new BLL.QuickPay.SecretSecurity().EmailKey), false); Jmail.Close(); return(true); } catch { return(false); } }
// 回复邮件 private void btnReplyCurrentMail_Click(object sender, EventArgs e) { int index = lstViewMailList.SelectedItems[0].Index; messageMail = popClient.Messages[index + 1]; // 使写信选项卡成为当前选项卡 tabControlMyMailbox.SelectTab(tabPageWriteLetter); txbSendTo.Text = lstViewMailList.SelectedItems[0].SubItems[1].Text; txbSubject.Text = "Re:" + messageMail.Subject; richtbxBody.Text = ""; richtbxBody.Focus(); }
protected void SubmitButton_Click(object sender, EventArgs e) { string title = "你的心灵之家登录密码"; string username = UserName.Text.Trim(); string sql = "select password,email from login where username=@username"; SqlParameter[] paras={new SqlParameter("@username",SqlDbType.NVarChar){Value=username}}; SqlDataReader reader = dbhelper.GetDataReader(sql, paras); if (reader.Read()) { string password = reader["password"].ToString(); //string recipient = "*****@*****.**"; string recipient = reader["email"].ToString(); string content = "您的登录密码为:" + password; jmail.Message JMail = new jmail.Message(); string strFromEmail = "*****@*****.**"; JMail.Silent = false; JMail.Logging = true; JMail.Charset = "GB2312"; JMail.Encoding = "Base64"; JMail.ContentType = "text/html"; JMail.Subject = title.Trim(); //【邮件标题】 JMail.Body = content.Trim(); //【邮件内容】 JMail.AddRecipient(recipient.Trim()); JMail.From = strFromEmail.Trim(); //【发件人】 JMail.MailServerUserName = "******"; JMail.MailServerPassWord = "******"; try { JMail.Send("smtp.163.com", false); FailureText.Text = "密码已发送到你注册的邮箱里!"; } catch (Exception ex) { FailureText.Text = "邮件发送失败!"; return; } finally { JMail.Close(); } } else { FailureText.Text = "用户名不存在!"; } }
// 删除当前预览邮件 private void btnDelCurrentMail_Click(object sender, EventArgs e) { int index = lstViewMailList.SelectedItems[0].Index; messageMail = popClient.Messages[index + 1]; if (MessageBox.Show("确认要删除邮件" + messageMail.Subject + "吗?", "删除确认", MessageBoxButtons.YesNo, MessageBoxIcon.Information) == DialogResult.Yes) { popClient.DeleteSingleMessage(index + 1); tbxMailboxInfo.Text = "删除了主题为“" + messageMail.Subject + "”的邮件"; popClient.Disconnect(); richtbxMailContentReview.Text = ""; btnReplyCurrentMail.Enabled = false; btnDelCurrentMail.Enabled = false; } }
private void transCode1(ref string MailSubject, jmail.Message mailmessage)//对邮件主题为UTF-8编码格式的尝试解码 { byte[] b; string transcode; try { if (mailMessage.Text.IndexOf("Subject:=?UTF-8?B?") != -1 || mailMessage.Text.IndexOf("Subject: =?UTF-8?B?") != -1 || mailMessage.Text.IndexOf("Subject: =?utf-8?B?") != -1 )//解析邮件主题 { if (mailMessage.Subject.IndexOf("=?UTF-8?B?") != -1 ) { transcode = mailMessage.Subject.Substring(mailMessage.Subject.IndexOf("=?UTF-8?B?") + 10); transcode = transcode.Substring(0, transcode.IndexOf("?="));//定位到特殊字符,通过修改相应字符进行解码 b = Convert.FromBase64String(transcode); transcode = Encoding.GetEncoding("utf-8").GetString(b); MailSubject = transcode; } else if (mailMessage.Subject.IndexOf("=?utf-8?B?") != -1) { transcode = mailMessage.Subject.Substring(mailMessage.Subject.IndexOf("=?utf-8?B?") + 10); transcode = transcode.Substring(0, transcode.Length - 2); b = Convert.FromBase64String(transcode); transcode = Encoding.GetEncoding("utf-8").GetString(b); MailSubject = transcode; } else { b = System.Text.Encoding.Default.GetBytes(mailMessage.Subject); transcode = Encoding.GetEncoding("utf-8").GetString(b); MailSubject = transcode; } } else { MailSubject = mailMessage.Subject; } } catch { MessageBox.Show("编码格式有问题"); } }
// 阅读邮件内容 // 这里也可以实现ListView Click事件来阅读邮件的 private void btnReadMail_Click(object sender, EventArgs e) { // 登陆成功后 popClient的连接就一直保持着,因此无须重复连接 if (lstViewMailList.SelectedItems.Count == 0) { MessageBox.Show("请先选择阅读的邮件!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } int index = lstViewMailList.SelectedItems[0].Index; messageMail = popClient.Messages[index + 1]; richtbxMailContentReview.Text = messageMail.Body; btnReplyCurrentMail.Enabled = true; btnDelCurrentMail.Enabled = true; lstViewMailList.Focus(); }
// 删除邮件 private void btnDeleteMail_Click(object sender, EventArgs e) { if (lstViewMailList.SelectedItems.Count == 0) { MessageBox.Show("请先选择阅读的邮件!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } int index = lstViewMailList.SelectedItems[0].Index; messageMail = popClient.Messages[index + 1]; if (MessageBox.Show("确认要删除邮件" + messageMail.Subject + "吗?", "删除确认", MessageBoxButtons.YesNo, MessageBoxIcon.Information) == DialogResult.Yes) { popClient.DeleteSingleMessage(index + 1); popClient.Disconnect(); btnRefreshMailList.PerformClick(); } }
private void dgvEmailInfo_CellDoubleClick(object sender, DataGridViewCellEventArgs e)//双击相应单元格得到详细邮件信息 { try { strFrom = strSubject = strDate = strAttachment = string.Empty; strFrom = dgvEmailInfo.Rows[e.RowIndex].Cells[0].Value.ToString(); if (dgvEmailInfo.Rows[e.RowIndex].Cells[1].Value == null) { strSubject = null; } else { strSubject = dgvEmailInfo.Rows[e.RowIndex].Cells[1].Value.ToString(); } strDate = dgvEmailInfo.Rows[e.RowIndex].Cells[3].Value.ToString(); mailMessage = popMail.Messages[e.RowIndex + 1]; atts = mailMessage.Attachments; for (int k = 0; k < atts.Count; k++) { att = atts[k]; if (strAttachment == string.Empty) { strAttachment = att.Name; } else { strAttachment += ";" + att.Name;//得到所有的附件名并以逗号隔开 } } frmEmailInfo frmemailinfo = new frmEmailInfo(); frmemailinfo.ShowDialog(); } catch { } }
private void transCode1(ref string MailSubject, jmail.Message mailmessage)//对邮件主题的解码 { byte[] b; string transcode; try { /*if (mailMessage.From == useraddr.Trim().ToLower()) * { * MailFrom = "我"; * } * else * { * if (mailMessage.Text.IndexOf("From: =?UTF-8?B?") != -1) * { * if (mailMessage.FromName.IndexOf("<") != -1) * { * // b = System.Text.Encoding.Default.GetBytes(mailMessage.FromName.Substring(0, mailMessage.FromName.IndexOf("<")-1)); * // b = System.Text.Encoding.Default.GetBytes(mailMessage.FromName.Substring(mailMessage.FromName.IndexOf("<")+1 , mailMessage.FromName.Length - mailMessage.FromName.IndexOf("<"))); * //transcode = Encoding.GetEncoding("utf-8").GetString(b); * transcode = mailMessage.FromName.Substring(mailMessage.FromName.IndexOf("<") + 1); * MailFrom = transcode; * } * else * MailFrom = mailMessage.From; * } * else * MailFrom = mailMessage.From; * }*/ if (mailMessage.Text.IndexOf("Subject:=?UTF-8?B?") != -1 || mailMessage.Text.IndexOf("Subject: =?UTF-8?B?") != -1 || mailMessage.Text.IndexOf("Subject: =?utf-8?B?") != -1 )//解析邮件主题 { if (mailMessage.Subject.IndexOf("=?UTF-8?B?") != -1 ) { transcode = mailMessage.Subject.Substring(mailMessage.Subject.IndexOf("=?UTF-8?B?") + 10); transcode = transcode.Substring(0, transcode.IndexOf("?="));//修改 b = Convert.FromBase64String(transcode); transcode = Encoding.GetEncoding("utf-8").GetString(b); MailSubject = transcode; } else if (mailMessage.Subject.IndexOf("=?utf-8?B?") != -1) { transcode = mailMessage.Subject.Substring(mailMessage.Subject.IndexOf("=?utf-8?B?") + 10); transcode = transcode.Substring(0, transcode.Length - 2); b = Convert.FromBase64String(transcode); transcode = Encoding.GetEncoding("utf-8").GetString(b); MailSubject = transcode; } else { b = System.Text.Encoding.Default.GetBytes(mailMessage.Subject); transcode = Encoding.GetEncoding("utf-8").GetString(b); MailSubject = transcode; } } else { MailSubject = mailMessage.Subject; } } catch { MessageBox.Show("编码格式有问题"); } }
private object Mail(string ToEmailAddress, string FromEmailAddress, string FromEmailPassword, string CCEmailAddress, string BccEmailAddress, string EmailSubject, string EmailBody, string EmailAttachmentPath) { try { jmail.Message Jmail = new jmail.Message(); string[] from = FromEmailAddress.Split('@'); if (CCEmailAddress == "") { } else { string cc1 = CCEmailAddress.Substring(0, CCEmailAddress.Length - 1); string[] cc = cc1.Split(','); //添加抄送人邮箱地址 foreach (var item in cc) { Jmail.AddRecipientCC(item); } } if (BccEmailAddress == "") { } else { string Bcc1 = BccEmailAddress.Substring(0, BccEmailAddress.Length - 1); string[] Bcc = Bcc1.Split(','); //添加密送人邮箱地址 foreach (var item in Bcc) { Jmail.AddRecipientBCC(item); } } if (EmailAttachmentPath == "," || EmailAttachmentPath == "") { } else { //string p = EmailAttachmentPath.Substring(0, EmailAttachmentPath.Length - 1); string[] path = EmailAttachmentPath.Split(','); //邮件添加附件 foreach (var item in path) { Jmail.AddAttachment(@item); } Jmail.AddAttachment(EmailAttachmentPath); } string to1 = ToEmailAddress.Substring(0, ToEmailAddress.Length - 1); string[] to = to1.Split(','); //Silent属性:如果设置为true,JMail不会抛出例外错误. JMail. Send( () 会根据操作结果返回true或false Jmail.Silent = true; //Jamil创建日志,前提logging属性设置为true Jmail.Logging = true; Jmail.FromName = ecoBio.Wms.Web.Masterpage.CurrUser.alias; //字符集,缺省为"US-ASCII" Jmail.Charset = "GB2312"; Jmail.ISOEncodeHeaders = true; //添加收件人邮箱地址 foreach (var item in to) { Jmail.AddRecipient(item); } // Jmail.AddRecipient(ToEmailAddress); //Jmail.AddRecipientCC(CCEmailAddress); //发件人邮箱地址 Jmail.From = FromEmailAddress; //发件人邮件姓名 Jmail.MailServerUserName = from[0]; //发件人邮件密码 Jmail.MailServerPassWord = FromEmailPassword; //设置邮件标题 Jmail.Subject = EmailSubject; //邮件内容 //Jmail.Body = EmailBody; Jmail.HTMLBody = EmailBody; //邮件优先级为3为Normal Jmail.Priority = 3; Jmail.Send("smtp.qq.com"); //Jmail.Send("smtp.ecobiotech.com.cn"); Jmail.Close(); return ""; } catch (Exception ex) { Console.WriteLine("发送失败:" + ex); return ""; } }
private object Mail(string ToEmailAddress, string FromEmailAddress, string FromEmailPassword, string CCEmailAddress, string BccEmailAddress, string EmailSubject, string EmailBody, string EmailAttachmentPath) { try { jmail.Message Jmail = new jmail.Message(); string[] from = FromEmailAddress.Split('@'); if (CCEmailAddress == "") { } else { string cc1 = CCEmailAddress.Substring(0, CCEmailAddress.Length - 1); string[] cc = cc1.Split(','); //添加抄送人邮箱地址 foreach (var item in cc) { Jmail.AddRecipientCC(item); } } if (BccEmailAddress == "") { } else { string Bcc1 = BccEmailAddress.Substring(0, BccEmailAddress.Length - 1); string[] Bcc = Bcc1.Split(','); //添加密送人邮箱地址 foreach (var item in Bcc) { Jmail.AddRecipientBCC(item); } } if (EmailAttachmentPath == "," || EmailAttachmentPath == "") { } else { //string p = EmailAttachmentPath.Substring(0, EmailAttachmentPath.Length - 1); string[] path = EmailAttachmentPath.Split(','); //邮件添加附件 foreach (var item in path) { Jmail.AddAttachment(@item); } Jmail.AddAttachment(EmailAttachmentPath); } string to1 = ToEmailAddress.Substring(0, ToEmailAddress.Length - 1); string[] to = to1.Split(','); //Silent属性:如果设置为true,JMail不会抛出例外错误. JMail. Send( () 会根据操作结果返回true或false Jmail.Silent = true; //Jamil创建日志,前提logging属性设置为true Jmail.Logging = true; Jmail.FromName = ecoBio.Wms.Web.Masterpage.CurrUser.alias; //字符集,缺省为"US-ASCII" Jmail.Charset = "GB2312"; Jmail.ISOEncodeHeaders = true; //添加收件人邮箱地址 foreach (var item in to) { Jmail.AddRecipient(item); } // Jmail.AddRecipient(ToEmailAddress); //Jmail.AddRecipientCC(CCEmailAddress); //发件人邮箱地址 Jmail.From = FromEmailAddress; //发件人邮件姓名 Jmail.MailServerUserName = from[0]; //发件人邮件密码 Jmail.MailServerPassWord = FromEmailPassword; //设置邮件标题 Jmail.Subject = EmailSubject; //邮件内容 //Jmail.Body = EmailBody; Jmail.HTMLBody = EmailBody; //邮件优先级为3为Normal Jmail.Priority = 3; Jmail.Send("smtp.qq.com"); //Jmail.Send("smtp.ecobiotech.com.cn"); Jmail.Close(); return(""); } catch (Exception ex) { Console.WriteLine("发送失败:" + ex); return(""); } }
public void sendmail(string lsjsrid,string lsbt,string lsnr,string lsid) { //lsjsrid 接收人[email protected],[email protected] //lsbt 主题 //lsnr 内容 //lsfjpath 附件路径 HyoaClass.Hyoa_mail_config Hyoa_mail_config = new HyoaClass.Hyoa_mail_config(); DataTable dtmailuser = Hyoa_mail_config.Getmailconfigbyuserid(this.Session["hyuid"].ToString()); string lssendid = ""; string lssendpwd = ""; string lssendname = ""; string lshost = ""; string lsport = ""; if (dtmailuser.Rows.Count > 0) { for (int n = 0; n < dtmailuser.Rows.Count; n++) { if (dtmailuser.Rows[n]["hy_mailid"].ToString() == this.ddlmailset.SelectedValue.ToString()) { lssendid = dtmailuser.Rows[n]["hy_mailid"].ToString(); lssendpwd = Decrypt(dtmailuser.Rows[n]["hy_mailpwd"].ToString()); lssendname = this.Session["hyuname"].ToString(); lshost = dtmailuser.Rows[n]["hy_smtpurl"].ToString(); lsport = dtmailuser.Rows[n]["hy_smtpport"].ToString(); } } } else { return; } string lsml = ""; lsml = Server.MapPath("~/");//得到虚拟根目录 jmail.Message jmail = new jmail.Message(); DateTime t = DateTime.Now; String Subject = lsbt; String body = lsnr; String FromEmail = lssendid; String ToEmail = lsjsrid; //Silent属性:如果设置为true,JMail不会抛出例外错误. JMail. Send( () 会根据操作结果返回true或false jmail.Silent = true; //Jmail创建的日志,前提loging属性设置为true jmail.Logging = true; //字符集,缺省为"US-ASCII" jmail.From = FromEmail; jmail.Charset="gb2312"; jmail.ContentTransferEncoding="base64"; jmail.Encoding="base64"; jmail.ISOEncodeHeaders=false; //信件的contentype. 缺省是"text/plain") : 字符串如果你以HTML格式发送邮件, 改为"text/html"即可。 //jmail.ContentType = "text/html"; //添加收件人 string[] lvToEmail; lvToEmail = ToEmail.Split(','); for (int jj = 0; jj < lvToEmail.Length; jj++) { jmail.AddRecipient(lvToEmail[jj], "", ""); } //jmail.AddRecipient(ToEmail, "", ""); //jmail.AddRecipient(ToEmail2, "", ""); //jmail.From = FromEmail; //发件人邮件用户名 //jmail.MailServerUserName = lssendid.Substring(0,lssendid.IndexOf("@")); jmail.MailServerUserName = lssendid; //发件人邮件密码 jmail.MailServerPassWord = lssendpwd; //设置邮件标题 jmail.Subject = Subject; //邮件内容 jmail.HTMLBody = body; //邮件添加附件,(多附件的话,可以再加一条Jmail.AddAttachment( "c:test.jpg",true,null);)就可以搞定了。[注]:加了附件,讲把上面的 Jmail.ContentType="text/html";删掉。否则会在邮件里出现乱码。 //jmail.AddAttachment(@"D:\bbb.rar", true, "htm"); //jmail.AddAttachment(@"D:\bbb.txt", true, "htm"); //邮件附件 HyoaClass.Hyoa_fileatt Hyoa_fileatt = new HyoaClass.Hyoa_fileatt(); DataTable dtfileatt = Hyoa_fileatt.GetfileattByFatherid(lsid); if (dtfileatt.Rows.Count > 0) { for (int jj = 0; jj < dtfileatt.Rows.Count; jj++) { jmail.AddAttachment(@lsml + "\\" + dtfileatt.Rows[jj]["hy_filepath"].ToString(), true, "htm"); } } //Jmail发送的方法 jmail.Send(lshost, false); jmail.Close(); }
private void frmMain_Load(object sender, EventArgs e) { string MailSubject = ""; for (int i = 0; i < dgvEmailInfo.Columns.Count; i++) { dgvEmailInfo.Columns[i].SortMode = DataGridViewColumnSortMode.NotSortable; } strsever = login.Pop; user = login.User; pwd = login.Password; popMail = new jmail.POP3Class(); try { popMail.Connect(user, pwd, strsever, 110);//通过jmail提供的方法直接连接服务器获取邮件 TLabUser.Text = user; TLabNum.Text = popMail.Count + "封"; if (popMail.Count != 0) { dgvEmailInfo.RowCount = popMail.Count;//显示与邮件封数相同的行数 if (popMail != null) { if (popMail.Count > 0) { for (int i = 1; i < popMail.Count + 1; i++) { mailMessage = popMail.Messages[i];//获取某一封邮件 transCode1(ref MailSubject, mailMessage); mailMessage.Charset = "GB18030"; mailMessage.Encoding = "Base64"; mailMessage.ISOEncodeHeaders = false; string priority = mailMessage.Priority.ToString(); //邮件编码等设置 dgvEmailInfo.Rows[i - 1].Cells[0].Value = mailMessage.From; //将发信人填到第一格 dgvEmailInfo.Rows[i - 1].Cells[1].Value = MailSubject; //将主题填到第二格 dgvEmailInfo.Rows[i - 1].Cells[3].Value = mailMessage.Date; //将时间填到第四格 if ((popMail.Count >= 1) && (i <= popMail.Count)) { atts = mailMessage.Attachments;//实例化邮件附件 if (atts.Count > 0) { dgvEmailInfo.Rows[i - 1].Cells[2].Value = "附件下载"; } else { dgvEmailInfo.Rows[i - 1].Cells[2].Value = "无附件"; } } dgvEmailInfo.Rows[0].Selected = false;//信息填充好后清除第一行被选中的状态 } } } } else { dgvEmailInfo.Rows.Clear(); } } catch { MessageBox.Show("该用户邮箱不存在!", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
/// <summary> /// 发送邮件 /// </summary> /// <returns>是否发送成功</returns> public void Send() { jmail.Message m = new jmail.Message(); m.Charset = "gb2312"; m.From = _sendMailAddress; m.Subject = _Title; m.AddRecipient(_ReceiverMailAddress, null, null); m.MailServerUserName = UserName; #region password m.MailServerPassWord = Password; #endregion m.ContentType = "text/html"; m.Body = _Content; //m.Send("mail.ouc.edu.cn", false); m.Send("smtp.163.com", false); //m.Send("smtp.sohu.com", false); m.Close(); }