//Setup attachments list
ShowStatus("Decoding attachments (" + IntToStr(Msg->MessageParts->Count) + ")");
Memo1->Lines->Clear();
for (intIndex = 0; intIndex < (Msg->MessageParts->Count) ;intIndex++)
{
if (dynamic_cast<TIdAttachment*>(Msg->MessageParts->Items[intIndex]))
{ //general attachment
pnlAttachments->Visible = true;
li = lvMessageParts->Items->Add();
li->ImageIndex = 8;
RecievedAttachmentfilename= dynamic_cast<TIdAttachment*>(Msg->MessageParts->Items[intIndex])->FileName;
TIdAttachment*e=dynamic_cast<TIdAttachment*>(Msg->MessageParts->Items[intIndex]);
LocalAttachmentfilename=ExtractFilePath(ParamStr(0));
LocalAttachmentfilename=LocalAttachmentfilename + "ATTACH\\";//add attach folder name to store locally in sub folder
LocalAttachmentfilename=LocalAttachmentfilename + RecievedAttachmentfilename;
li->Caption=LocalAttachmentfilename;
if (e!=NULL)
e->SaveToFile(LocalAttachmentfilename);
}
else
{//body text
if (dynamic_cast<TIdText*>(Msg->MessageParts->Items[intIndex] ))// then
{
Memo1->Lines->AddStrings(dynamic_cast<TIdText*>(Msg->MessageParts->Items[intIndex])->Body);
}
}
}
ShowStatus(stTemp);
if (POP->Connected())
{
POP->Disconnect();
}
IdMsgSend->ContentType = ContentType;
IdMsgSend->From->Text = LocalMail;
if (ReturnReciept)
{//{We set the recipient to the From E-Mail address }
IdMsgSend->ReceiptRecipient->Text = IdMsgSend->From->Text;
}
else
{// {indicate that there is no receipt recipiant}
IdMsgSend->ReceiptRecipient->Text = "";
}