Форум: "Основная";
Текущий архив: 2006.12.10;
Скачать: [xml.tar.bz2];
ВнизIndy Найти похожие ветки
← →
Shadow_exe (2006-10-29 15:35) [0]Здравствуйте.
Заню, уже много писалось по этому поводу, но всеже у меня ничего не выходит(((
Вот мой код:
procedure TForm1.Button1Click(Sender: TObject);
var
mc, i, s, j: integer;
m: TIdMessage;
begin
if not IdPOP31.Connected then
ShowMessage("Неа)))")
else
begin
mc:=Form1.idpop31.CheckMessages;
m:=TIdMessage.Create(idpop31);
for i := 1 to mc do
begin
idpop31.RetrieveHeader(i,m);
for j:=0 to m.MessageParts.Count-1 do
if M.MessageParts.Items[j] is TIdText then
Memo1.Lines.AddStrings(TIdText(m.MessageParts.Items[j]).Body);
end;
end;
end;
Изложу проблему в двух словах:
Я могу все получить (заголовок, from, время), одним словом ВСЕ! Но не могу получить сам текст сообщения(m.Body.Text
Он мне или ничего не возвращяет, или просто пустое место! (что почти одно и тоже)
Что делать?
Искал в поисковиках, так почти у всех одно и тоже написано, но подобной проблемы нет не у кого)))m.Body.Text
TIdText(m.MessageParts.Items[j]).Body
Возвращяет одно и тоже... - ""
← →
Орион © (2006-10-29 15:49) [1]> Но не могу получить сам текст сообщения(
Оно и понятно.TIdPOP3.Retrieve(const MsgNum: Integer; AMsg: TIdMessage)
← →
Орион © (2006-10-29 15:52) [2]PS: потому что получить заголовок и получить все сообщение - две разные разницы.
Перед тем как постить, можно было хотя бы справку прочитать:
← →
Орион © (2006-10-29 15:53) [3]случайно отправить нажал.
Retrieves headers for a message.
function RetrieveHeader(const MsgNum: Integer; AMsg: TIdMessage): Boolean;
Parameters
const MsgNum: Integer
Message number to be retrieved.
AMsg: TIdMessage
Message instance where headers will be stored.
Return Value
Boolean - True on success.
Description
RetrieveHeader is a Boolean function that retrieves the headers of the message number specified in MsgNum and stores the values in the AMsg instance.
← →
Shadow_exe (2006-10-29 15:58) [4]Спасибо попробую)
← →
Shadow_exe (2006-10-29 16:02) [5]
procedure TForm1.Button1Click(Sender: TObject);
var
mc, i, s, j: integer;
m: TIdMessage;
begin
if not IdPOP31.Connected then
ShowMessage("Неа)))")
else
begin
mc:=Form1.idpop31.CheckMessages;
m:=TIdMessage.Create(idpop31);
for i := 1 to mc do
begin
idpop31.Retrieve(i,m);
for j:=0 to m.MessageParts.Count-1 do
if M.MessageParts.Items[j] is TIdText then
Memo1.Lines.AddStrings(TIdText(m.MessageParts.Items[j]).Body);
end;
end;
end;
Если ты имееш ввиду так, то оно теперь вообще не пашет(((
← →
Shadow_exe (2006-10-29 16:08) [6]Заработало)))
← →
Shadow_exe (2006-10-29 16:09) [7]А тогда другой вопрос:
Как узнать в какой папке лежит сообщение и брать только из входящих, или к примеру только те, что еще не прочитаны?
← →
Орион © (2006-10-29 16:19) [8]> [7] Shadow_exe (29.10.06 16:09)
не знаю. Я с "высокоуровневыми" компонентами Indy не работал :)
Насколько я знаю "папки" организуются локально, т.е. в самом мейл-клиенте.
← →
Shadow_exe (2006-10-29 16:21) [9]
> т.е. в самом мейл-клиенте
Это так, но всеравно как-то оно же должно розбиваться)))
Ладно, что-то придумаю...
← →
Орион © (2006-10-29 16:23) [10]> [9] Shadow_exe (29.10.06 16:21)
просто сам сортируй по папкам.
← →
Shadow_exe (2006-10-29 16:32) [11]Легко сказать)))
← →
Shadow_exe (2006-10-29 16:41) [12]
IdMessage1.CharSet := "Windows-1251";
IdMessage1.ContentType := "text/html";
IdMessage1.ContentTransferEncoding := "noEncode";
А что с кодировкой делать то?
Пробую все что знаю, но ничего не выходит)))
← →
Орион © (2006-10-29 16:58) [13]rfc 2045
← →
Shadow_exe (2006-10-29 16:59) [14]Что это?
← →
Орион © (2006-10-29 17:04) [15]http://unix.org.ua/rfc/rfc2045.html
← →
Shadow_exe (2006-10-29 17:21) [16]розабрался вроде...
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2006.12.10;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.039 c