Форум: "Начинающим";
Текущий архив: 2008.03.30;
Скачать: [xml.tar.bz2];
ВнизВопрос по отправке сообщения Найти похожие ветки
← →
Sesh (2008-03-04 09:25) [0]Доброго утра всем.
Хочу отправить сообщение в формате html, пишу
MailMessage.ContentType:="text/html";
Отправляет все-равно как обычный текст, теги все не принимает, что еще ему надо указать?
← →
Смирнов (2008-03-04 14:19) [1]
> теги все не принимает
это что означает?
Если речь об TIdMessage, то у него есть хороший метод SaveToFile.
Вместо отправки сохрани в файл и посмотри, что там в нем, чем он отличается от того, который тебе нужен (например созданный в Outlook).
Много вопросов решится.
← →
palva © (2008-03-04 14:37) [2]
> что еще ему надо указать?
Ничего не надо указывать. У вас все получилось. html и есть обычный текст с заголовком
ContentType: text/html
← →
Sesh (2008-03-04 16:47) [3]Да не, имелось ввиду создать формат сообщения не текстовый а хтмл, если я отправлю сообщение типа
<font_ size=3 color="#800040"><b_>Привет</b_></font_>
_ подставил спецом
я в таком виде получу его, а мне надо его получить так
<font size=3 color="#800040">Привет</font>
← →
Sesh (2008-03-04 16:48) [4]вот жирным выделило, а если я ттправляю сообщение - то приходит с тегами а не меняет их на выделение
← →
Sesh (2008-03-05 08:52) [5]Ребята, ну ничего так и не получается, разниці между MailMessage.ContentType:="text/html" и MailMessage.ContentType:="text/plain" просто никакой, отправляю так:
MailMessage.Recipients.EMailAddresses:="test@mail.ru";
MailMessage.ContentType:="text/html";
MailMessage.CharSet := "windows-1251";
SMTP.Connect(1000);
SMTP.Send(MailMessage);
Что не так?
← →
Сергей М. © (2008-03-05 09:12) [6]Приведи полный текст сообщения, а не этот огрызок
← →
palva © (2008-03-05 09:53) [7]
> разниці между MailMessage.ContentType:="text/html" и MailMessage.
> ContentType:="text/plain" просто никакой
Вы можете привести заголовки письма, которое приходит, в том и другом случае?
Заголовок Content-type там присутствует? Разница наблюдается?
← →
Sesh (2008-03-05 10:17) [8]ну собственно так:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html;charset=windows-1251"
http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
<meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8">
<title></title>
<style type="text/css"> </style>
<p style="margin-bottom: 0cm;">Внимение!</p>
<p style="margin-bottom: 0cm;">Вам направляется.... <br>
<font color="brown" size="3">Данное сообщение отправлено роботом!</font><br>
</p>
</body>
</html>
← →
palva © (2008-03-05 10:23) [9]Sesh (05.03.08 10:17) [8]
Это данные письма, что называется body. Это понятно. Нужны заголовки, то есть те строчки, которые POP3 сервер посылает перед данными.
← →
Sesh (2008-03-05 10:39) [10]Извените за тупой вопрос, а где посмотреть заголовки? Что необходимо еще отправлять?
← →
Сергей М. © (2008-03-05 10:53) [11]
> где посмотреть заголовки?
IdMessage.Headers.SaveToFile
← →
palva © (2008-03-05 10:56) [12]Не менее тупой вопрос, а как вы получили письмо?
Если вы получили письмо в Outlook Express, то можно просто сохранить письмо на диск. Это будет текстовый файл с расширением eml. Первые строки будут заголовками. Они отделяются пустой строкой от тела письма. Это конечно, если письмо самое примитивное, без вложений и т. д. Другие почтовые клиенты тоже дают возможность посмотреть заголовки.
← →
Sesh (2008-03-05 10:57) [13]Создает пустой файл, т.е нет там заголовков.
← →
Сергей М. © (2008-03-05 11:03) [14]А у меня есть заголовки и файл не пустой.
Что я делаю неправильно ?
← →
Sesh (2008-03-05 11:13) [15]Я понимаю что смешно, поєтому прошу помощи.
В полученном письме у меня
Return-path: <.......>
Received: from SESH (.......)
by ...... (iPlanet Messaging Server 5.2 Patch 2 (built Jul 14
2004)) with ESMTPA id <0JX800FI1ZJ9S5@.........> for
.............; Wed, 05 Mar 2008 09:59:36 +0200 (EET)
Date: Wed, 05 Mar 2008 09:59:36 +0200 (EET)
Date-warning: Date header was inserted by ..............
From: ..............
Sender: ..............
Message-id: <..............>
MIME-version: 1.0
Content-type: TEXT/PLAIN
Content-transfer-encoding: 8BIT
Original-recipient: rfc822;..............
content="text/html"
From: "Info" <..............>
Subject: Information
To: test@mail.ru
Content-Type: multipart/mixed;
boundary="=_NextPart_2rfkindysadvnqw3nerasdf";
charset="windows-1251"
MIME-Version: 1.0
Date: Wed, 5 Mar 2008 10:04:49 +0200
X-Priority: 3
X-Library: Indy 9.00.10
This is a multi-part message in MIME format
--=_NextPart_2rfkindysadvnqw3nerasdf
Content-Type: text/plain
Content-Transfer-Encoding: 7bit
← →
Смирнов (2008-03-05 11:25) [16]
> Content-Type: text/plain
А говоришь нет заголовков, а это что?
ПопробуйIdMessage.NoEncode := false;
перед установкой ContentType.
← →
Sesh (2008-03-05 11:30) [17]Все-равно приходит с
Content-type: text/plain
Content-transfer-encoding: 8BIT
← →
Смирнов (2008-03-05 11:38) [18]У тебя multi-part сообщение, т.е состоит из нескольких частей. Поэтому тип контента нужно устанавливать для конкретной части сообщения, как - не помню, посмотри свойства сообщения (частей).
← →
Sesh (2008-03-05 12:03) [19]Ну для 2-й части менять получается так:
MailMessage.MessageParts.Items[0].ContentType:="text/html"; - действительно меняет
а как же задать для тела сообщения если так
MailMessage.ContentType:="text/html" не задает
← →
Sesh (2008-03-05 12:52) [20]Все, спасибо за помощь, доразбирался, дописал кое что и получилось все ок.
emptybody := TIdText.Create(MailMessage.MessageParts, nil);
htmlbody := TIdText.Create(MailMessage.MessageParts, nil);
htmlbody.body.LoadFromFile("message3.html");
htmlbody.ContentType := "text/html";
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2008.03.30;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.05 c