Показать сообщение отдельно
Старый 08.02.2013, 19:17   #12  
Narayana is offline
Narayana
Участник
 
241 / 100 (4) +++++
Регистрация: 05.01.2009
Адрес: Москва
Цитата:
Сообщение от gl00mie Посмотреть сообщение
Да, разными. Если вы посмотрите на методы SysMailer из 4-ки или 3-ки, то увидите у него отдельно body()/bodyCharSet() и htmlBody()/htmlBodyCharSet(). В 2009-й первые два убрали, однако, COM-объект, для которого SysMailer является оберткой, от этого не изменился, он все ещё умеет отсылать текст писем plain text'ом, и метод quickSend() для обратной совместимости так их и шлет.
А можно вас попросить завершить мой ликбез?
Возможно, еще кому-то будет полезно.

Итак, что я понял...
Почтовым клиентом письмо воспринимается как в формате "текст" или как в формате "html".
При этом в шапке письма должно существовать поле Content-Type, хотя в сорсе страницы на mail.ru я такого поля в заголовке письма не вижу.

Соответственно, если мы хотим отправить письмо простым текстом, мы должны воспользоваться методом quickSend, а если хотим отправить письмо с html контентом, то методом sendMail.
Но, вот здесь с этим методом sendMail я уже ничего не понимаю, потому как вот все его содержание:

public void sendMail()
{
InteropPermission permission = new InteropPermission(InteropKind::ComInterop);
;
permission.assert();
//BP Deviation Documented
_COM.send();
}

Где COM уже системный класс и посмотреть че в нем нельзя.

В общем, никаких параметров, никаких полей заголовка письма и никакой документации куда че толкать.

РасскАжите как этим пользоваться?
Я так понимаю, ваш пример должен был пересылаться как раз этим методом, потому как quickSend строку с объектами html отослать-то может, но почтовые клиенты этого снова не поймут.

Кстати, если все-таки пытаться цеплять html-ные тэги в строку для quickSend, кое-что происходит. Например </br> таки переводит строку, а если расметить что-то типа полного линка, то сам линк не отображается, зато начинает отображаться следующая за ним строка, начинающаяся с "http://".