![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
TidPOP3 заголовки не всех писем получает. Как заставить? [D7, WinXP]
sasha73 © (2009-04-14 18:28:00)Добрый день, Мастера.
Второй день бьюсь. Сначало код, потом объясню:
Var
POP3 : TIdPOP3;
MsgRecive : TIdMessage;
st : String;
Begin
POP3:=TIdPOP3.Create(nil);
MsgRecive:=TIdMessage.Create(nil);
POP3.Host:='aa.bb.cc.dd';
POP3.Username:='user1';
POP3.Password:='passwd1';
POP3.Connect(5000);
POP3.RetrieveHeader(3,MsgRecive);
St:=MsgRecive.Subject;
На некоторых сообщения не принимается заголовок. Не могу понять почему. Т.е. St в итоге пустая строка. Хотя на самом деле в письме тема заполнена.
Заголовок письма несколько нестандартен:
From user@domen.ru Mon Apr 13 17:45:41 2009
X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on domen.ru
X-Spam-Level: **
X-Spam-Status: No, score=2.9 required=5.0 tests=ALL_TRUSTED,DATE_IN_PAST_03_06,
TVD_SPACE_RATIO autolearn=no version=3.2.5
>From office Mon Apr 13 17:45:41 2009
Return-Path: <send@domen.ru>
X-Original-To: rcpt@domen.ru
Delivered-To: rcpt@domen.ru
Received: from domen.ru (localhost [127.0.0.1])
...
В Delphi 6 на POP3.RetrieveHeader(3,MsgRecive) вообще было исключение "Connection Closed Gracefully". После установки Delphi 7 исключения нет, но заголовок пустой.
Понятно, что это из-за нестандартности письма. Такие письма получаются в результате персылки. Но все же компонент TNMPOP3 обрабатывает его нормально. И все почтовые клиенты. На TNMPOP3 переходить не хочется, т.к. немало кода уже написано под TIdPOP3. :-(
Как думаете, есть возможность заставить TIdPOP3 воспринимать все заголовки отдельно?
sasha73 (2009-04-14 18:30:00) [21]Не отдельно, а правильно, имелось ввиду. :-)
(Извините, голова уже болит и перепрыгиваю с одного задания на другое)