Модераторы: Snowy, Poseidon, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Удаление с почтового ящика прочитанного сообщения. 
:(
    Опции темы
Pakshin A. S.
Дата 24.2.2006, 13:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 5056
Регистрация: 16.2.2003

Репутация: нет
Всего: 61



Вот код:

Код

          then
            pop.Delete(mc); // не удаляет сообщение

      m.Free;
      dec(mc);
     end;
 except
    
 end;
 pop.Free;


В че может быть причина? И вообще: то ли я использую?
PM   Вверх
Pakshin A. S.
Дата 24.2.2006, 23:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 5056
Регистрация: 16.2.2003

Репутация: нет
Всего: 61



Есть какие-нить идеи? Посмотрев интернет, увидел, что не я один с такой проблемой, но пока среди таких же тем я не нашел ответа... smile

Сама функция Delete() показывает, что сообщение удалено, но в реале ничего не происходит... smile
PM   Вверх
Snowy
Дата 25.2.2006, 13:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 53
Всего: 484



Перед pop.Free сделай
pop.Disconnect
PM MAIL   Вверх
Pakshin A. S.
Дата 25.2.2006, 13:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 5056
Регистрация: 16.2.2003

Репутация: нет
Всего: 61



smile заработало... гы...

А почему без Disconnect не хотело работать?

smile
PM   Вверх
Snowy
Дата 25.2.2006, 23:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 53
Всего: 484



Вся фишка в том, что Free просто уничтожает объект, разрывая при этом Socket соединение.
Протокол POP3 устроен так, что некультурные соединения не считаются корректно закрытыми.
То есть по сути в процессе работы удаления писем не происходит. Происходит их маркировка, как удаленные.
При этом реально они не удаляются в течении сеанса. И в течении сеанса их можно восстановить.
Полностью же они удаляются при корректном завершении сеанса, то есть, при получении комманды QUIT.
Вот эту самую комманду и дает Disconnect TIdPOP3.
Без него сеанс считается завершенным аварийно и маркировка удаления не имеет силы.
PM MAIL   Вверх
Pakshin A. S.
Дата 25.2.2006, 23:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 5056
Регистрация: 16.2.2003

Репутация: нет
Всего: 61



Хммм... smile интересно... Принято к сведению и спасибо за науку... smile
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Сети"
Snowy
Poseidon
MetalFan

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делится вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Snowy, Poseidon, MetalFan.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Сети | Следующая тема »


 




[ Время генерации скрипта: 0.0842 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.