Модераторы: gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Прикрепление файла к mail, без использования Net.Mail 
V
    Опции темы
Remember
Дата 25.11.2008, 16:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 63
Регистрация: 25.2.2007
Где: Самара

Репутация: нет
Всего: 1



Задача стоит написать программу для отправки почты БЕЗ использования namespace Net.Mail.
Использую Net.Socket. Отправка проходит, но...

Наткнулся я на две проблемы:

1) Отправляю письмо через smtp.mail.ru, авторизация проходит успешно... вернее не отправляю, так как получаю ошибку 503.. и оказываюсь спамером. 
Что делать? Может использовать какие-то другие серверы?

2) Не знаю как приаттачить файл к письму и добававить ещё одного отправителя.. может кто писал подобное и подскажет что делать.. 

Заранее спасибо.
PM MAIL   Вверх
jonie
Дата 26.11.2008, 10:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 5613
Регистрация: 21.8.2005
Где: Владимир

Репутация: 15
Всего: 118



зачитать rfc по SMTP чего нельзя чтоль?
2) вот так это примерно решается (выдрано из исходников тестового примера) :
Код

            // Send Content-type
            sc.SendLine("Content-type: Multipart/Mixed; boundary=xContext\r\n");
            cout<<">"<<"Content-type: Multipart/Mixed; boundary=xContext\r\n";

            sc.SendLine("\r\n--xContext\r\n");
            cout<<">"<<"\r\n--xContext\r\n";

            // Send Content-type
            sc.SendLine("Content-type: text/plain; charset=ISO-8859-1\r\n");
            cout<<">"<<"Content-type: text/plain; charset=ISO-8859-1\r\n";

            // Send Content-Transfer-Encoding
            sc.SendLine("Content-Transfer-Encoding: 8bit\r\n");
            cout<<">"<<"Content-Transfer-Encoding: 8bit\r\n";

            // Send Message
            wsprintf(szBuffer, "\r\n%s\r\n", szMailBody);
            sc.SendLine(szBuffer);
            cout<<">"<<szBuffer;

            sc.SendLine("\r\n--xContext\r\n");
            cout<<">"<<"\r\n--xContext\r\n";

            // Send Content-type
            CHAR* filename = GetFileNameFromPath(szAttach);    //имя (без пути) файла для отсылки
            wsprintf(szBuffer, "Content-type: Application/Octet-stream; name=\"%s\"; type:unknown\r\n", filename);
            sc.SendLine(szBuffer);
            cout<<">"<<szBuffer;

            // Send Content-type
            wsprintf(szBuffer, "Content-Disposition: attachment; filename=\"%s\"\r\n", filename);
            sc.SendLine(szBuffer);
            cout<<">"<<szBuffer;

            // Send Content-Transfer-Encoding
            sc.SendLine("Content-Transfer-Encoding: base64\r\n\r\n");
            cout<<">"<<"Content-Transfer-Encoding: base64\r\n\r\n";

            string b64data;

            ifstream in(szAttach,ios::binary);
            noskipws(in);
            base64::encode(istream_iterator<unsigned char>(in),
                istream_iterator<unsigned char>(),
                back_inserter(b64data));

            sc.SendLine(b64data);
            cout<<">"<<b64data<<endl;

            sc.SendLine("\r\n\r\n--xContext--\r\n");
            cout<<">"<<"\r\n\r\n--xContext--\r\n";



--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
Remember
Дата 26.11.2008, 16:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 63
Регистрация: 25.2.2007
Где: Самара

Репутация: нет
Всего: 1



Проблему решил, jonie, спасибо...
Теперь хоть знаю что такое rfc smile
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
cully
mr.DUDA
Exception

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, cully, mr.DUDA, Exception.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Распределённые приложения и сеть | Следующая тема »


 




[ Время генерации скрипта: 0.0900 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.