现在用indy9.0,发现它自带的例子有一些问题,请高手们改正一下:
1。收到的邮件的标题如果是简体中文就成 =?gb2312?B?tN+02cLbzsSjoQ==?= 之类形式,如果给标题解码?它的代码是: FMsgCount := POP.CheckMessages;
......
POP.RetrieveHeader(intIndex, Msg);
itm := lvHeaders.Items.Add;
itm.Caption := Msg.Subject; //得到的是乱码
itm.SubItems.Add(Msg.From.Text);
itm.SubItems.Add(DateToStr(Msg.Date));
2。收到的附件的内容都是以乱码的方式放在正文中,我是希望能放到那个专门放附件的Listview中,如何解决?它的代码类似是: Msg.NoDecode := false;
APOP.Retrieve(1, Msg); for i := 0 to Pred(Msg.MessageParts.Count) do
begin
if (Msg.MessageParts.Items[i] is TIdAttachment) then
begin
lstAttachments.Add(TIdAttachment(Msg.MessageParts.Items[i]).Filename); // 此句好象始终没有执行, why???
end
else
begin
if Msg.MessageParts.Items[intIndex] is TIdText then
begin
Memo1.Lines.AddStrings(TIdText(Msg.MessageParts.Items[i]).Body);
end
end;
end;请大家帮帮忙
1。收到的邮件的标题如果是简体中文就成 =?gb2312?B?tN+02cLbzsSjoQ==?= 之类形式,如果给标题解码?它的代码是: FMsgCount := POP.CheckMessages;
......
POP.RetrieveHeader(intIndex, Msg);
itm := lvHeaders.Items.Add;
itm.Caption := Msg.Subject; //得到的是乱码
itm.SubItems.Add(Msg.From.Text);
itm.SubItems.Add(DateToStr(Msg.Date));
2。收到的附件的内容都是以乱码的方式放在正文中,我是希望能放到那个专门放附件的Listview中,如何解决?它的代码类似是: Msg.NoDecode := false;
APOP.Retrieve(1, Msg); for i := 0 to Pred(Msg.MessageParts.Count) do
begin
if (Msg.MessageParts.Items[i] is TIdAttachment) then
begin
lstAttachments.Add(TIdAttachment(Msg.MessageParts.Items[i]).Filename); // 此句好象始终没有执行, why???
end
else
begin
if Msg.MessageParts.Items[intIndex] is TIdText then
begin
Memo1.Lines.AddStrings(TIdText(Msg.MessageParts.Items[i]).Body);
end
end;
end;请大家帮帮忙
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货