Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Как узнать размер письма в TIdSMTP (Indy 10)  (Прочитано 7990 раз)
0 Пользователей и 1 Гость смотрят эту тему.
RomCom
Опытный

ru
Offline Offline
Пол: Мужской

WWW
« : 05-10-2005 02:41 » 

Необходимо сделать ProgressBar отправки письма. Используется компонент TIdSMTP (Indy 10).
Если я правильно понял, количество отправленных байт берется из события OnWork (AWorkCount).
А как можно получить общее количество отправляемых данных?
Записан

R.O.M.C.O.M.: Robotic Operational Mathematics and Ceaseless Observation Machine
Boojum
Гость
« Ответ #1 : 25-07-2006 18:22 » 

Теоретически, количество байт, которое должно быть передано, передается обработчику OnWorkBegin в параметре AWorkCountMax, однако, в действительности в TIdSMTP Indy9 передается 0. Пока никакого способа узнать размер письма я не нашел. Возможно, в Indy10 этот баг (или фитча?) исправлены.
Записан
DemonicAlligator
Гость
« Ответ #2 : 27-07-2006 08:52 » 

В порядке извращения:  можно сделать TIdMessage.SaveToStream и посчитать, скока байт записалось...
Записан
RomCom
Опытный

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #3 : 27-07-2006 23:34 » new

Попытавшись побороть TIdSMTP и разложив пополочкам его код, я понял что узнать размер письма можно только способом
В порядке извращения:  можно сделать TIdMessage.SaveToStream и посчитать, скока байт записалось...
Других вариантов просто не предусмотрено, т.к. само письмо формируется динамически, по частям, во время отправки.
Записан

R.O.M.C.O.M.: Robotic Operational Mathematics and Ceaseless Observation Machine
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines