Delphi4如何获得nmpop31.MailMessage中邮件头的日期?(50分)

  • 主题发起人 主题发起人 MicroStar
  • 开始时间 开始时间
Received: from public.fhnet.cn.net (ns.fhnet.cn.net [202.99.8.1])
for <hehe@tonghua.com.cn>; Sun, 8 Nov 1998 02: 38:09 +0800 (CST)
Received: from wanghs ([202.99.34.78])
for <hehe@tonghua.com.cn>; Sun, 8 Nov 1998 02: 30:19 +0800 (CST)

Message-Id: <199811071830.CAA09283@public.fhnet.cn.net>
//注意上面这一行,日期时间序号


Date: Sun, 8 Nov 1998 2:32:14 +0800
From: wang han song <wanghs@nease.net>


下面是DLEPHI的得到方法
NMPOP31.GetMailMessage(StrToInt(Edit5.Text));
Edit1.Text := NMPOP31.MailMessage.From; //邮件由那里发出
Edit2.Text := NMPOP31.MailMessage.Subject; //邮件主题
Edit3.Text := NMPOP31.MailMessage.MessageID; //这里就是那个日期字符串了
//如您上面所看到的,MESSAGEID实际上就是收到的信笺在
//发信人所用的发信服务器中的日期和序列号码,所以只要人为解析一下
//那个字符串就可以了,相信解析那个字符串对您来说一定不是困难的事
// 这个字符串里的Message-Id: <199811071830.CAA09283@public.fhnet.cn.net>
//尖括号引起来的部分就是需要的,从尖括号开始取字符, 加到八位了就停止
//就可以得到时间了,1830是SERVER端的时间计数单位,我测算了一下
//大概是以5秒左右为单位的 ,也就是说1830是9000秒,那么发出邮件的时间
//就是早晨9000/3600 =2:30 分了
Memo2.Lines.Assign(NMPOP31.MailMessage.Head);
Memo1.Lines.Assign(NMPOP31.MailMessage.Body);

 
多谢!这50分一定是你的!
你如何知道是以5秒左右为单位的呢?
这个时间是不是发件人发出邮件的时间,还是撰写的时间!
 
接受答案了.
 
后退
顶部