Я создаю программу, которая поддерживает функции электронной почты в веб-браузере. Я хочу, чтобы он мог писать по электронной почте людям, и я пытаюсь выяснить, как я могу сделать это с помощью C ++. Может ли кто-нибудь помочь, пожалуйста?
Вам потребуется установить SMTP-сервер (если вы работаете в Windows) или использовать sendmail, если в Linux. Если вы не хотите устанавливать SMTP-сервер, вы можете использовать внешний, как указано в некоторых примерах .
Я пытался отправить электронное письмо с CURL и с libesmtp . Оба хороши, хотя мне больше нравится CURL, потому что он может работать асинхронно. Кроме того, у меня есть обертка только для заголовка . Отправка электронной почты так же просто, как:
long rc = Curl().send ("Subject: subject\r\n\r\n" "text\r\n") .smtp ("from", "to") .go().status(); if (rc != 250) std::cerr << "Error sending email: " << rc << std::endl;
Если у вас Windows, я использовал Dundas Ultimate TCP / IP с отличными результатами.
Если ничего не помогает, вы всегда можете записать письмо в файл и попытаться использовать system (3) для вызова mail (1) .
$ mail -s 'OMG!' mybff@example.com
Все, что вам нужно сделать, это использовать библиотеку, которая позволяет вам использовать SMTP-сервер (простой протокол пересылки почты). Для какой платформы вы разрабатываете это?
Розетки - ваш лучший выбор. Ваш лучший ресурс для сокетов в C и C ++: http://beej.us/guide/bgnet/
Для реализации попробуйте здесь: http://www.codeguru.com/forum/showthread.php?t=300530