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

Вниз

Progressbar при получении почты   Найти похожие ветки 

 
98eksom   (2005-09-22 09:56) [0]

Подскажите как узнать количество принятых байт при извлечении присоединенного файла к письму, а также размер этого присоединенного файла . Используется компонент idPOP3.


 
98eksom   (2005-09-22 11:44) [1]

никто не знает?


 
Stalker01 ©   (2005-09-24 03:55) [2]

Размер вложения: RetrieveMsgSize(номер письма)
Кол-во обработанных байт можно получить на событии:
GetWork(Sender: TObject; AWorkMode: TWorkMode;
 const AWorkCount: Integer);
Где AWorkCount-кол-во байт


 
98eksom   (2005-09-26 12:18) [3]

RetrieveMsgSize(1) возвращает неверное значение. Выдает размер письма 50кб, а на самом деле размер письма составляет 700кб (в письме имеется прикрепленный архив).
На почтовом ящике находится 1-но письмо, RetrieveMailBoxSize возвращает теже 50кб. Заходил на ящик и проверял вручную 700кб.


 
Stalker01 ©   (2005-09-26 13:49) [4]

Странно, у меня все работает. Тоже письмо с вложением. Покажи весь код.


 
98eksom   (2005-09-27 09:35) [5]

while main.NMPOP31.CheckMessages<>0 do
begin
  main.IdMessage2.Clear;
  kol_bait:=main.NMPOP31.RetrieveMsgSize(1);
  main.Memo2.Lines.Add("- "+inttostr(kol_bait)); // выводит - 50631 ,а на самом деле 711011
  main.NMPOP31.Retrieve(1,main.IdMessage2);
  main.Memo2.Lines.Add("Адрес: "+main.IdMessage2.From.Address);
  for j:=0 to main.IdMessage2.MessageParts.Count-1 do
   if main.IdMessage2.MessageParts.Items[j].ClassType = TIdAttachment then
    begin
     Attach := main.IdMessage2.MessageParts.Items[j] as TIdAttachment;
     main.Memo2.Lines.Add("Присоединен:"+Attach.FileName);
      fname:=Attach.FileName;
      IF FileExists(inbox+fname) then DeleteFile(inbox+fname);
      Attach.SaveToFile(inbox+Attach.FileName);
     end;
   main.NMPOP31.Delete(1);
end;
   main.NMPOP31.Disconnect;

procedure Tmain.NMPOP31Work(Sender: TObject; AWorkMode: TWorkMode;
 const AWorkCount: Integer);
begin
Application.ProcessMessages;
Label2.Caption:=IntToStr(AWorkCount);
end;

Если строку kol_bait:=main.NMPOP31.RetrieveMsgSize(1);
заменить
  main.NMPOP31.SendCmd("LIST 1",wsok);
  main.memo2.Lines.Add(main.NMPOP31.LastCmdResult.Text[0]);

то результат будет верным   // результат-  1 711011
1 номер сообщения 711011 размер



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

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

Наверх




Память: 0.45 MB
Время: 0.008 c
2-1135053938
Officeman
2005-12-20 07:45
2006.01.08
Приложение для КПК


14-1134195633
begin...end
2005-12-10 09:20
2006.01.08
С Днём рождения! 10 декабря


2-1135157933
Новенькая
2005-12-21 12:38
2006.01.08
опять treeview


2-1135085285
Я Виктор
2005-12-20 16:28
2006.01.08
Универсальный проигрыватель


2-1135149994
chelovek
2005-12-21 10:26
2006.01.08
Новый компонент.





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский