Простой способ отправки письма в С++. Программный способ отправки письма тут.
Отправляем письмо через защищенное соединение SSL почтовика yandex.ru
адрес почтового сервера — smtp.yandex.ru;
защита соединения — SSL;
порт — 465.
Если Вы хотите отправить письмо через SSL mail.ru или google.com, то просто поменяйте адрес (хост) почтового соединения и порт.
Unit1.cpp
//--------------------------------------------------------------------------- #include <vcl.h> #pragma hdrstop #include "Unit1.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- void __fastcall TForm1::Button1Click(TObject *Sender) { IdMessage1->Subject = "Первое письмо в C++ на email"; // Тема письма IdMessage1->Body->Text = L"Тестово сообщение";// Текст поля письма IdMessage1->From->Text="Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра."; // Кто отправил IdMessage1->Recipients->EMailAddresses="Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра."; // Получатель //Соединяемся IdSMTP1->Connect(); //Отправляем IdSMTP1->Send(IdMessage1); //Закрываем IdSMTP1->Disconnect(); } //---------------------------------------------------------------------------
Unit1.h
//--------------------------------------------------------------------------- #ifndef Unit1H #define Unit1H //--------------------------------------------------------------------------- #include <System.Classes.hpp> #include <Vcl.Controls.hpp> #include <Vcl.StdCtrls.hpp> #include <Vcl.Forms.hpp> #include <IdBaseComponent.hpp> #include <IdComponent.hpp> #include <IdExplicitTLSClientServerBase.hpp> #include <IdIOHandler.hpp> #include <IdIOHandlerSocket.hpp> #include <IdIOHandlerStack.hpp> #include <IdMessage.hpp> #include <IdMessageClient.hpp> #include <IdSMTP.hpp> #include <IdSMTPBase.hpp> #include <IdSSL.hpp> #include <IdSSLOpenSSL.hpp> #include <IdTCPClient.hpp> #include <IdTCPConnection.hpp> //--------------------------------------------------------------------------- class TForm1 : public TForm { __published: // IDE-managed Components TButton *Button1; TIdSMTP *IdSMTP1; TIdSSLIOHandlerSocketOpenSSL *IdSSLIOHandlerSocketOpenSSL1; TIdMessage *IdMessage1; void __fastcall Button1Click(TObject *Sender); private: // User declarations public: // User declarations __fastcall TForm1(TComponent* Owner); }; //--------------------------------------------------------------------------- extern PACKAGE TForm1 *Form1; //--------------------------------------------------------------------------- #endif