Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.01.29;
Скачать: CL | DM;

Вниз

Indy   Найти похожие ветки 

 
antonio_b   (2006-01-11 10:37) [0]

Нужен примерчик по работе с TIdImap4 или ссылочка на соотв. инфу.


 
Ega23 ©   (2006-01-11 10:49) [1]

TIdImap4 + F1


 
umbra ©   (2006-01-11 11:37) [2]

http://www.indyproject.org/DemoDownloads/Indy_10_IMAP4Client.zip


 
antonio_b   (2006-01-11 11:58) [3]

Спасибо за пример!


 
Альф   (2006-01-11 12:42) [4]


function CheckMailByUID(): integer;
var
 i: integer;
 path: string;
 filename: TFileName;

 amsglist: TIdMessageCollection;
 msguid: string;
begin
 result := 0;
 path := "D:\mail\inbox.msg\";

 IdIMAP.Connect();

 if IdIMAP.Connected
 then try
   if IdIMAP.SelectMailBox("INBOX")
   then try
     amsglist := TIdMessageCollection.Create(TIdMessageItem);
     if IdIMAP.UIDRetrieveAllEnvelopes(amsglist)
     then begin
//{*}     add2log(LOG_Info, "Всего писем: " + IntToStr(amsglist.Count));

       for i := 0 to amsglist.Count -1 do begin
         Application.ProcessMessages();

         msguid := (amsglist.Items[i] as TIdMessageItem).IdMessage.UID;
         if IdIMAP.UIDRetrieve(msguid, IdMessage)
         then begin

//{*}       add2log(LOG_Info, msguid + " " +  IdMessage.MsgId);

           filename := MsgIdToFileName(IdMessage.MsgId);
           IdMessage.SaveToFile(path + filename);

           if FileExists(path + filename)
           then begin
// После этого можно со спокойной совестью удалять письмо из ящика
             if not IdIMAP.UIDDeleteMsg(msguid)
             then begin
// Ошибка - Удаление не прошло
//  {*}           add2log(LOG_Error, "Удаление не прошло");
             end;
             result := result + 1;
           end else begin
// Ошибка - Сохранить не получилось
           end;
         end else begin
// Ошибка - Не получилось принять сообщение # + IntToStr(i)
//{*}         add2log(LOG_Error, "Не получилось принять сообщение UID#" + msguid);
         end;
       end;
// Перепаковать выбраный ящик
       if not IdIMAP.ExpungeMailBox()
       then begin
// Ошибка - Ликвидация провалилась
       end;

     end else begin
//{*}     add2log(LOG_Info, "Not retrieve messages #");
     end;

   finally
     amsglist.Free();
   end else begin
// Ошибка - Не удалось выбрать почтовый ящик
//{*}   add2log(LOG_Error, "Не удалось выбрать почтовый ящик");
   end;
 finally
   IdIMAP.Disconnect();
 end else begin
// Ошибка - Не удалось подключиться к IMAP4
//{*} add2log(LOG_Error, "Не удалось подключиться к IMAP4");
 end;
end;




Страницы: 1 вся ветка

Текущий архив: 2006.01.29;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.043 c
2-1137064344
Practicant
2006-01-12 14:12
2006.01.29
Узнать ширину текста...


15-1136735854
antonn
2006-01-08 18:57
2006.01.29
Делаю MUI, есть пара вопросов


15-1136885631
Pers
2006-01-10 12:33
2006.01.29
Mapinfo


1-1135600351
Barsky
2005-12-26 15:32
2006.01.29
Загрузить процессор. Фантазии не хватает.


2-1136906678
RDS
2006-01-10 18:24
2006.01.29
сравнение массивов