转载:http://www.cnblogs.com/ustb*/archive/2007/05/28/762581.html
//取数据库中邮件信息中的最大发送时间,即最近接收到的一封邮件的时间
Database dbase=new Database();
DataTable data=dbase.GetDataTable("select max(MailSendDate) as MailSenderDate from TabMailList where MailTypeFlag='1'"); //对服务器上的邮件的发送时间和数据库最近一封邮件的时间进行比较,如果大那么证明该邮件还未被收取,是一封新邮件,这样避免重复收取邮件入库
if(Msg.Date>Convert.ToDateTime(data.Rows[][].ToString())) {
//将这封新邮件的信息保存到数据库
this.SaveExtMail(Msg,Username,dataReader["Email"].ToString(),jpop.GetMessageUID(i));
http://blog.csdn.net/robin844/article/details/8200367
http://edm.ishang.net/faq/detail/the-imap-protocol.html
http://help.163.com/09/1223/14/5R7P6CJ600753VB8.html
默认SMTP是开启的,且不能关闭。
什么是IMAP服务?
IMAP全称是Internet Mail Access Protocol(交互式邮件存取协议),与目前广泛使用的POP3相似,都是一种邮件获取协议。
IMAP最吸引人的功能之一是“同步”,即对邮箱的任何操作,在网页、客户端、手持设备上都是多向同步的。例如,一封在电脑上用闪电邮客户端已打开的信,在iPhone4上不会显示为新邮件;一封从iPhone4上发出的邮件,也会出现在iPad和闪电邮的已发邮件里。
http://mail.163.com/html/110127_imap/index.htm#tab=ipad
验证邮件的唯一性,可以考虑使用,发件人+收件人+发件时间 进行MD5值进行判断,从而进行邮件的重复性校验。