Вложения письма.

  • Автор темы IliaIT
  • Дата начала
Статус
Закрыто для дальнейших ответов.
I

IliaIT

#1
Столкнулся с тем что при принятии письма принимает и вложения (что в принципе естественно). но вот почему-то вложения остаются в винде в папке temp (C:\Documents and Settings\Администратор\Local Settings\Temp\) в виде файлов Ind87.tmp. Вопрос: как удалять вложения письма после принятия?

на форме есть компоненты почты : TidPOP3, TIdMessage, TidSMTP.
Прога в delphi 7.

Код обработки писем.
Код:
Код:
procedure TForm1.Button3Click(Sender: TObject);
var
i: Integer;
out_mail:boolean;
begin
try
POP3.Host:=E_Host; // адресс почтового сервера
POP3.Port:=strtoint(E_Port_p);		  // порт по которому будет осуществляться подключение
POP3.Username:=E_Username; // Логин пользователя
POP3.Password:=E_Password;  // пароль пользователя
POP3.Connect; // подключение по протоколу POP3, по настрокам в компоненте IdPOP3, с именем POP3
i:=1;
repeat
Memo1.Clear;  // очистка компонента memo для отображения текста письма.
IdMessage.Clear; // очистка буфера для сообщения
out_mail:=POP3.Retrieve(i,IdMessage); // получение одного сообщения
if out_mail then
begin
Memo1.Lines.AddStrings(IdMessage.Body); // передача сообщения из компонента IdMessage в memo
// вывод в компоненты Label информации о сообщении.
Label1.Caption := IdMessage.From.Text;
Label2.Caption := IdMessage.Recipients.EmailAddresses;
Label3.Caption := IdMessage.CCList.EMailAddresses;
Label4.Caption := IdMessage.Subject;
Label5.Caption := FormatDateTime('yyyy.mm.dd hh:mm:ss', IdMessage.Date);
Label6.Caption := IdMessage.ReceiptRecipient.Text;
Label7.Caption := IdMessage.Organization;
if Label4.Caption=E_Subject then //проверка на нужное письмо тех. данных
begin
{ConectSQL;
mail_data;
DisConectSQL;
POP3.Delete(i);}
Memo2.Lines.Add('Получил 2');
end;

Memo2.Lines.Add('Получил 1 '+inttostr(i));

i:=i+1;
end;
until not(out_mail);

ms_text.Caption :='проверил почту '+datetimetostr(now());
POP3.Disconnect; // разрыв связи
except
Save_log('ошибка в процедуре Button3Click, принятие почты');
end;
end;
Если только руками удалять файлы, тогда вопрос как определить имя этого файла? ведь у них только вроде начало общее, и то не факт что это от этой проги. именно с этим началом файл. У письма может быть и 2 и более вложений, как следствие создастся несколько файлов(а они могут быть большие 2-5 метров).

Да, забыл добавить, после перезагрузки проги файлы остаются, при перезагрузке компа они тоже остаются, винда 2003. да и комп перезагружается обычно не чаще 1 раз в 3-4 месяца.
 
Статус
Закрыто для дальнейших ответов.