Indy收邮件,附件名问题(100分)

  • 主题发起人 wangzequn
  • 开始时间
W

wangzequn

Unregistered / Unconfirmed
GUEST, unregistred user!
网上邮件原文件附件名是这样的
=?gb2312?B?KNOizsQpzfjVvrPJuaawuMD91bnKvtKzw+a2/i5kb2M=?=
直接考出来解码也没问题;
但用IdPOP收邮件的时候
attFileName:=TIdAttachment(idMsg.MessageParts.Items).FileName;
结果attFileName的值是i5kb2M=_=怎么不是这个啊
=?gb2312?B?KNOizsQpzfjVvrPJuaawuMD91bnKvtKzw+a2/i5kb2M=?=
好像Indy控件取文件名时把/前面的都截掉了,是否要改Indy的控件呢,还是要怎么处理
各位大虾给点意见啊
 
问题自已解决了,改了一下Indy
 
怎么改的?
 
学习,混分。[:)]
 
找到相关函数的地方,把取路径的函数拿掉,或是其他的过滤
 
IdMessageCoderMIME.pas
将Result := RemoveInvalidCharsFromFilename(DecodeHeader(Result));改为DecodeHeader(Result);
网上找的,说是Indy控件的Bug[:)]
 
顶部