Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.01.29;
Скачать: [xml.tar.bz2];

Вниз

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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.046 c
15-1136785963
begin...end
2006-01-09 08:52
2006.01.29
С Днём рождения! 9 января


15-1135924999
syte_ser78
2005-12-30 09:43
2006.01.29
стоит ли менять?


15-1136871008
begin...end
2006-01-10 08:30
2006.01.29
С Днём рождения! 10 января


15-1136832939
Knight
2006-01-09 21:55
2006.01.29
Что и как можно узнать о компьютере?


6-1129531014
__Пупкин
2005-10-17 10:36
2006.01.29
Как получить время с другого компупера?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский