![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Здравствуйте
Скачал исходники с примера http://programmersclub.ru/alar-pochovik/ и подделал данные под себя (хост, имя пользователя и тд.). Письма на сервер отправляет нормально все ок. Но вот увы когда пытаешся получить письмо с сервера он пишет следующее: This is a multi-part message in MIME format. Что предполагаю переводится как: Это составное сообщение в формате MIME. В интернете есть инфа по самому MIME но нет информации по обработке MIME сообщений в Delphi. (Может плохо искал. не отрицаю.) В связи с чем вопрос есть ли компоненты для декодирования MIME сообщений и как их можно привязать к вышеуказанному примеру? Заранее спасибо |
|
#2
|
|||
|
|||
|
Это значит, что письмо разбито на части. Обычно это происходит тогда, когда в письмо вставлены разные файлы (аттачи и/или картинки). Умеет это дело обратно собирать TIdMessage, например.
|
|
#3
|
|||
|
|||
|
Цитата:
Буду очень благодарен если вы сможете поделится примером практического применения TIdMessage в данном случае. |
|
#4
|
|||
|
|||
|
Вот нашел более интересный пример http://codingrus.ru/infusions/pro_do...oad.php?did=62 там уже использован TIdDecoderMIME Только вот там увы не отображается тело письма при получении. Если у кого то есть соображения оч прошу поделится
![]() |
|
#5
|
|||
|
|||
|
Уря! Текст письма получить удалось. Было IdPOP31.RetrieveHeader(i,IdMessage1); добавил IdPOP31.Retrieve(i,IdMessage1);
)Правда в старом добром виде This is a multi-part message in MIME format. Следовательно текст письма там никак не связан с TIdDecoderMIME. В общем вопрос по тому как сделать из This is a multi-part message in MIME format текст письма открыт![]() |
|
#6
|
|||
|
|||
|
Есть прогресс! Хвала поисковикам
Удалось получить текст письма с помощью следующей конструкцииMemo3.Lines:= (IdMessage.MessageParts.Items[1] as TIdText).Body; текст письма был тест пришел в следующем виде ФЕУФ. Опытным путем удалось выяснить что был текст письма нужно перекодировать из CP1251 в KOI8-R. Если у кого то есть идеи с радостью выслушаю ![]() |
|
#7
|
|||
|
|||
|
Прожект завершен успешно. Кого интересует информация пишите на emelyanov8@gmail.com чем смогу помогу
![]() Тема закрыта всем спасибо ![]() |
|
#8
|
|||
|
|||
|
Думаю наоборот надо из KOI8-R в CP1251, т.к. ФЕУФ - это в KOI8-R.
Код:
function Koi_WinConvert(const St: string): string;
type
TConvertChars = array [#128..#255] of char;
const
Win_KoiChars: TConvertChars = (
#128,#129,#130,#131,#132,#133,#134,#135,#136,#137,#060,#139,#140,#141,#142,#143,
#144,#145,#146,#147,#148,#169,#150,#151,#152,#153,#154,#062,#176,#157,#183,#159,
#160,#246,#247,#074,#164,#231,#166,#167,#179,#169,#180,#060,#172,#173,#174,#183,
#156,#177,#073,#105,#199,#181,#182,#158,#163,#191,#164,#062,#106,#189,#190,#167,
#225,#226,#247,#231,#228,#229,#246,#250,#233,#234,#235,#236,#237,#238,#239,#240,
#242,#243,#244,#245,#230,#232,#227,#254,#251,#253,#154,#249,#248,#252,#224,#241,
#193,#194,#215,#199,#196,#197,#214,#218,#201,#202,#203,#204,#205,#206,#207,#208,
#210,#211,#212,#213,#198,#200,#195,#222,#219,#221,#223,#217,#216,#220,#192,#209);
var
i: integer;
begin
Result:=St;
for i:=1 to Length(St) do
if St[i]>#127 then
Result[i]:=Win_KoiChars[St[i]];
end; |