2010-02-11 4 views
3

можно сделать это без какой-либо сторонней библиотеки.отправка почты с приложением в C++? (или Как создать MIME-кодированное электронное сообщение, которое я могу отправить на SMTP?)

Я могу отправить почту в gmail с помощью простых функций сокетов. Я могу отправить файлы на один компьютер другому. Но мне нужно отправить с приложением на любую учетную запись электронной почты ...

это можно сделать с помощью smtp?

(я искал здесь, но ответы, которые я смотрел, не находятся в C++ или нет в Windows или не полностью открыты. Извините, если есть ответ (-ы), который задан раньше, но я не мог найти)

спасибо,

+1

Почему вы хотите, чтобы не использовать сторонние библиотеки? –

+0

сначала он должен быть тотально с открытым исходным кодом. Многие из них составлены ... и, во-вторых, некоторые новые функции могут понадобиться в будущем. я не хочу, чтобы меня зависели ... У меня есть достаточно времени для поиска ... – H2O

ответ

3

В SMTP части вы найдете в других связанных с этим ответы, такие как How do I send attachments using SMTP?

+0

в первой ссылке, нет ничего, что покажет мне, как использовать MIME в C++? И вторая ссылка, решения находятся в pyhton. На самом деле я могу отправлять письма. Но smtp не поддерживает привязанность. в любом случае ... спасибо за ответ ... – H2O

+0

Вам нужно будет сделать что-то конкретное для ОС, чтобы ваша почта попала в руки агента почтовой передачи (MTA): откройте сокет TCP на SMTP-сервере. [Socket API не предоставляется ОС, а не является частью C++.] Или откройте канал, скажем, sendmail или qmail. [API-интерфейс Pipe, такой как popen(), предоставляется в ОС, а не в C++.] –

2

Абсолютно верно.

Что касается SMTP, вы просто предоставляете ему соответствующие заголовки (rfc822 устарел, но это хороший старт), а затем тело сообщения, которое может быть чем угодно.

Возможно, вы хотите создать тело сообщения, которое является кодированным MIME-сообщением, описывающим текст письма и любые вложения.

Вопрос, который вы должны спрашивать:

Как построить MIME закодированные сообщения электронной почты, что я могу отправить SMTP?

Кроме того, проблема создания сообщений электронной почты и отправки их была решена так много раз, вы должны действительно рассмотреть возможность использования библиотеки, если вы вообще способны.

+0

«Как создать MIME-кодированное электронное сообщение, которое я могу отправить на SMTP?» Да, это истинный вопрос ... – H2O