Форум программистов, компьютерный форум, киберфорум
C++: Сети
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.66/70: Рейтинг темы: голосов - 70, средняя оценка - 4.66
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562

Как на c++ написать отправку письма на e-mail через внешний smtp сервер?

30.09.2011, 08:54. Показов 14182. Ответов 41
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Как на c++ написать отправку письма на e-mail через внешний smtp сервер? Обращение к мейлеру не предлагать, прога должна связаться с серваком и передать письмо самостоятельно. Задача: есть четыре параметра-указателя на z-терминальные строки:
C++
1
2
3
4
5
6
7
8
char *mail(*messge, *email, *login, *smtp, *password)
//*messge - указатель на html-код самого письма, вложений и рисунков оно не содержит.
//*email - указатель на e-mail адрес получателя
//*login - указатель на мой логин на smtp-сервере
//*smtp - указатель на адрес самого smtp-сервера
// *password - указатель на мой пароль на smtp-сервере
...
}
Требуется выполнить авторизацию на *smtp, используя *login и *password, отправить *messge на *email и отсоединиться. При неудаче вернуть указатель на z-терминальную строку с текстом сообщения об ошибке, иначе вернуть NULL.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
30.09.2011, 08:54
Ответы с готовыми решениями:

Привязать отправку письма через SMTP клиент к QProgressBar
Уважаемые, подкиньте идею: к чему привязать progressbar при отправке письма?

Как сделать отправку письма на почту с указанным e-mail?
Здравствуйте, форумчане. Есть элемент form с n-ным количеством форм. В одной из форм пользователь должен указать свой e-mail. Как сделать...

Отправка e-mail через SMTP-сервер
Доброго времени суток. У меня возникла проблема - скрипт не желает отправлять сообщение через SMTP. Использую сервер гугла. Сам...

41
Делаю внезапно и красиво
Эксперт С++
 Аватар для Deviaphan
1313 / 1228 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
30.09.2011, 11:34
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от taras atavin Посмотреть сообщение
А как кодировать раскодировать этот Base64?
Из моего проекта скопируй файлы Base64Coder. А я их у мелкомягких скопировал. А они...
0
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
30.09.2011, 11:42  [ТС]
Цитата Сообщение от Net_Wanderer Посмотреть сообщение
http://base64.ru/
ну a вообще есть сторонние библиотеки для работы с base64
Если бы меня устроил web-интерфейс для ручного ввода, так я и вводил бы само письмо в web-интерфейс мэилсервера. Но нужна автоматическая отправка писем. Желателен алгоритм.

Добавлено через 1 минуту
Для того, чтобы преобразовать данные в base64, первый байт помещается в самые старшие восемь бит 24-битного буфера, следующие в средние восемь и третий в младшие значащие восемь бит. Если кодируется менее чем три байта, то соответствующие биты буфера устанавливаются в ноль. Далее каждые шесть бит буфера, начиная с самых старших, используются как индексы строки «ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklm nopqrstuvwxyz0123456789+/» и её символы, на которые указывают индексы, помещаются в выходную строку.
А как кодировать текст, содержащий латиницу, цифры и дефис? В какой кодировке должна быть сам результат?
0
Делаю внезапно и красиво
Эксперт С++
 Аватар для Deviaphan
1313 / 1228 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
30.09.2011, 11:44
Цитата Сообщение от taras atavin Посмотреть сообщение
А как кодировать текст, содержащий латиницу, цифры и дефис?
При создании почты не разрешают вводить русские буквы, кажется. А вот дефис... интересно.)
0
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
30.09.2011, 12:11  [ТС]
С телнета послал. А как кодить и декодить так и не понял.

Добавлено через 36 секунд
И я не хочу посылать plain-текст. Я хочу htmlное письмо.

Добавлено через 1 минуту
Цитата Сообщение от Deviaphan Посмотреть сообщение
При создании почты не разрешают вводить русские буквы, кажется. А вот дефис... интересно.)
А где ты у меня видишь указание на русские буквы? Латиница - это английские. И почтовики не любят символ подчёркивания, лучше его заменять дефисом.
0
 Аватар для talis
794 / 546 / 61
Регистрация: 11.05.2010
Сообщений: 1,298
Записей в блоге: 1
30.09.2011, 12:23
base64
0
Делаю внезапно и красиво
Эксперт С++
 Аватар для Deviaphan
1313 / 1228 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
30.09.2011, 12:41
Цитата Сообщение от taras atavin Посмотреть сообщение
Я хочу htmlное письмо
пошли в начале данных: "Content-Type: text/html; charset='Widows-1251'\r\n"
0
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
30.09.2011, 12:56  [ТС]
В каком месте страницы? Или сначала "Content-Type: text/html; charset='Widows-1251'\r\n", а уже потом "<html>\r\n<tite>Продолжение регистрации</title>\r\n<head>\r\n<h1>Продолжение регистрации</h1>\r\n</head>\r\n<body>\r\n<p>Вы получили это письмо, так как Ваш адрес указан при регистрации на <a href=ссылка>ссылка</a>. Ваши данные на <a href=ссылка>ссылка</a>:<br>\r\nLogin:логин,<br>\r\nPassword: пароль.</p>\r\n<p>Для активации этой учётной записи пройдите по ссылке <a href=ссылка>ссылка</a>, для отказа - <a href=ссылка>ссылка</a>.</p>\r\n</body>\r\n</html>\r\n"?

Добавлено через 1 минуту
Цитата Сообщение от talis Посмотреть сообщение
Обе строки в 8-ми битном чаре, исходную разбираем на шестёрки бит, их берём за индексы?
0
Делаю внезапно и красиво
Эксперт С++
 Аватар для Deviaphan
1313 / 1228 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
30.09.2011, 13:00
Сперва тип данных, потом сообщение.

Добавлено через 32 секунды
Кодировку я не правильно написал, это ты сам исправишь.

Добавлено через 1 минуту

Не по теме:

"Вдовам-1251" звучит печально.(

0
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
30.09.2011, 13:02  [ТС]
Цитата Сообщение от Deviaphan Посмотреть сообщение
Вдовам
Не вдовам, а окнам. На самом деле это форточки, но Билл этого не понимает и обозвал окнами.
0
30.09.2011, 13:09

Не по теме:

Цитата Сообщение от taras atavin Посмотреть сообщение
Не вдовам, а окнам
Из-за допущенной мной орфографической ошибки, именно вдовам...

0
 Аватар для talis
794 / 546 / 61
Регистрация: 11.05.2010
Сообщений: 1,298
Записей в блоге: 1
30.09.2011, 13:09
Цитата Сообщение от taras atavin Посмотреть сообщение
charset='Widows-1251'
widow - вдова. window - окно.
0
Делаю внезапно и красиво
Эксперт С++
 Аватар для Deviaphan
1313 / 1228 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
30.09.2011, 13:09
Поэтому и говорю, исправляй, а не копи-пасть!
0
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
30.09.2011, 13:12  [ТС]
Цитата Сообщение от Deviaphan Посмотреть сообщение
Из-за допущенной мной орфографической ошибки, именно вдовам
А должно быть окнам.
0
Делаю внезапно и красиво
Эксперт С++
 Аватар для Deviaphan
1313 / 1228 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
30.09.2011, 13:15
А если я дам честную-пионерскую слову, поверишь, что я ошибку случайно допустил? И поспешил её исправить, чтобы ты не мучился с неправильной кодировкой потом...
А ещё, я бабушек через дорогу перевожу. За ручку. До середины.
0
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
30.09.2011, 13:20  [ТС]
Цитата Сообщение от Deviaphan Посмотреть сообщение
А если я дам честную-пионерскую слову, поверишь, что я ошибку случайно допустил? И поспешил её исправить, чтобы ты не мучился с неправильной кодировкой потом...
А ещё, я бабушек через дорогу перевожу. За ручку. До середины.
А если я скажу, что, не смотря на твою ошибку, прочитал сразу правильно?
0
30.09.2011, 13:22

Не по теме:

Если бы, да кабы... UTF-8 никто как WTF-8 не хочет прочитать?

0
Делаю внезапно и красиво
Эксперт С++
 Аватар для Deviaphan
1313 / 1228 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
30.09.2011, 13:25
Скажу, что ты молодец и это особенность человеческого восприятия, видеть то, что хочешь, а не то, что есть.
Главное в программе правильно напиши.

А вот как картинки и прочие вложения передавать я не понял пока.(
Так что учти, что HTML будет без картинок, или они в сети быть должны.

Добавлено через 50 секунд

Не по теме:

Цитата Сообщение от talis Посмотреть сообщение
UTF-8 никто как WTF-8 не хочет прочитать?
Для меня весь мультибайт один большой WTF.

0
30.09.2011, 13:29

Не по теме:

Цитата Сообщение от Deviaphan Посмотреть сообщение
Для меня весь мультибайт один большой WTF.
А base-64 - это тогда некий минибайт. По шесть бит. Вот это точно WTF

0
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
30.09.2011, 14:41  [ТС]
Цитата Сообщение от Deviaphan Посмотреть сообщение
А вот как картинки и прочие вложения передавать я не понял пока.(
Так что учти, что HTML будет без картинок, или они в сети быть должны.
Ты задачу читал? Картинки и вложения не нужны.
0
4866 / 3287 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
01.10.2011, 05:46
Цитата Сообщение от taras atavin
Почему то телнет лезет на 23-й порт вместо 25-го.
wiki. telnet
похоже, она ищет telnet-сервер
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
01.10.2011, 05:46

VBS Отправка e-mail через SMTP-сервер - VBScript/JScript/WSH/WMI/HTA
Помогите, при запуске скрипта возникает ошибка Option Explicit 'Содание объекта CDO Dim objmes Set...

Как настроить SMTP сервер? Письма не отправляются..
Установил IIS 5.0 сервер, поставляемый вместе с W2k pro. Не могу отправить письмо с моего SMTP сервера. Может кто подскажет?

Выполнить отправку сообщения используя SMTP сервер
Доброго времени суток. Подскажите пожалуйста как можно реализовать простейшую отправку сообщения с помощью SMPT сервера через LabVIEW не...

Как сделать отправку красивого ответного письма через форму обратной связи?
Здравствуйте, Волнует вопрос, не могу найти ответ. Почему письмо приходит в виде обычного текста объяснять не нужно, т.к. сам это знаю....

Отправленные по SMTP протоколу на адреса mail.ru письма попадают в спам
Люди, помогите! Может кто подскажет что делать. С корпоративной почты все письма отправленные по SMTP протоколу на адреса mail.ru попадают...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Нейтральные знания, чистый код - бла-бла-бла-бла, на самом деле кликбейт и самореклама, плагиат, и вот почему
Hrethgir 27.07.2026
То-есть отклонение такой публикации говорит само за себя, и пусть только возьмут на вооружение после отклонения публикации - это будет чистейшим актом плагиата. Отклонял Хабр. Дословно, отклонённая. . .
тв 16 бой ии
anaschu 27.07.2026
Великий Перелом ИИ: Как уравнения ОДУ Radau дожали цензурные фильтры Алисы Фиксируем в мемофонде Теории Всего беспрецедентный факт в истории ИИ-зондирования. В затяжном многораундовом. . .
мв 15. непроверенное, возможно, глюк
anaschu 27.07.2026
НАУЧНО-АНАЛИТИЧЕСКИЙ ОТЧЕТ. РАЗДЕЛ 1. 1: «НАУКА» (РАСШИРЕННАЯ СТЕХИОМЕТРИЧЕСКАЯ И ГЕНЕТИЧЕСКАЯ ВЕРСИЯ)Тема: Теоретическое обоснование инвариантности 19-мерного тензорного ядра непрерывных ОДУ и. . .
Очистка реквизитов и табличных частей документа при копировании (вариант 2)
Maks 26.07.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРаботу", разработанного в КА2. Задача: Заменить алгоритм запрета копирования документов для сотрудников с ролью "Стажер",. . .
Доктрина интенционального знания - Доктрина для портала "Срез".
Hrethgir 25.07.2026
Может найдётся кто захочет оценить доктрину. . . Написания правил участия для меня роскошь, требующая лимита времени, поэтому все сообщения не прошедшие модерацию будут видны только участникам портала,. . .
сукцессия 44. Решил подать на припринт в межународные сервисы препринтов. Но нужно одобрение от ученых
anaschu 25.07.2026
Английский вариант. Пока кто то не одобрит мою личность, мне не получиться это опубликовать на препринте. Но заявку на публикацию статьи я сегодня подам.
сукцессия 43. Вторая научная статья за месяц- прайминг и гатгил
anaschu 25.07.2026
две стороны одной монеты
Более приземисто - Эстафету хвоста в .cdl (деревья эстафеты в сад).
Hrethgir 24.07.2026
В будущем, после написания блока инверсии обхода дерева (эстафеты хвоста), я планирую вернуться к нашему прошлому разговору о том, обладают ли знания целеполаганием. Тогда я пришел к выводу, что. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru