Այս ձեռնարկում մենք կուսումնասիրենք, թե ինչպես Ուղարկել Email-ը C++-ով: Դուք կսովորեք, թե ինչպես ուղարկել նամակներ՝ օգտագործելով SMTP հաճախորդը Gmail սերվերի վրա C++-ում՝ պարզ API զանգերով: Windows-ի և Linux հարթակներում API-ն օգտագործելու համար ձեզ հարկավոր չէ տեղադրել Microsoft Outlook-ը կամ էլփոստի որևէ այլ հաճախորդ:
C++-ով էլփոստ ուղարկելու քայլեր
- Տեղադրեք Aspose.Email for C++-ը NuGet փաթեթների կառավարիչից
- Ավելացրեք հղում Aspose::Email անվանատարածքին
- Միացեք Gmail փոստարկղին՝ օգտագործելով հավատարմագրերը SmtpClient Class օրինակում
- Բեռնել էլփոստի հաղորդագրությունը սկավառակից՝ օգտագործելով MailMessage Class օրինակը
- Օգտագործելով Ուղարկել SMTP հաճախորդի կողմից բացահայտված, ուղարկեք էլ. հաղորդագրություն C++-ով
Դուք կարող եք հեշտությամբ ուղարկել նամակներ՝ օգտագործելով SMTP Client-ը, որը միացված է Gmail-ին C++-ով մի քանի տող կոդով: Այս օրինակում մենք ցույց ենք տվել, թե ինչպես կարող եք ուղարկել EML ձևաչափի էլ-նամակ՝ օգտագործելով SMTP: Կարող եք նաև ուղարկել MSG ձևաչափի էլ.
Կոդ՝ C++-ով էլփոստ ուղարկելու համար
#pragma once | |
#include <system/object.h> | |
#include <system/array.h> | |
#include <system/string.h> | |
#include <system/shared_ptr.h> | |
#include <system/object_ext.h> | |
#include <system/exceptions.h> | |
#include <system/environment.h> | |
#include <system/diagnostics/trace.h> | |
#include <system/console.h> | |
#include <MailMessage.h> | |
#include <EmlLoadOptions.h> | |
#include <Clients/Smtp/SmtpClient/SmtpClient.h> | |
#pragma once | |
#include <Clients/SecurityOptions.h> | |
#include <system/io/path.h> | |
#include <system/io/directory_info.h> | |
#include <system/io/directory.h> | |
#include <Licensing/License.h> | |
using namespace Aspose::Email::Clients::Smtp; | |
using namespace Aspose::Email::Clients; | |
using namespace Aspose::Email; | |
using namespace System; | |
void SendingEMLWithSMTP() | |
{ | |
// Set the license for Aspose.Email for CPP | |
SharedPtr<License> license = System::MakeObject<License>(); | |
license->SetLicense(u"licFile"); | |
// The path to the source EML file to be send | |
System::String dstEmail = u"Message.eml"; | |
// Ue MailMessage class to load the email Message from disk | |
System::SharedPtr<MailMessage> message = System::MakeObject<MailMessage>(); | |
// Load the file in EML format | |
message = MailMessage::Load(dstEmail, System::MakeObject<EmlLoadOptions>()); | |
// Instantiate SmtpClient class object to connect to SMTP server | |
System::SharedPtr<SmtpClient> client = System::MakeObject<SmtpClient>(u"smtp.gmail.com", 587, | |
u"your.email@gmail.com", u"your.password"); | |
client->set_SecurityOptions(Aspose::Email::Clients::SecurityOptions::Auto); | |
try | |
{ | |
// Send the message | |
client->Send(message); | |
System::Console::WriteLine(u"Message has been sent"); | |
} | |
catch (System::Exception& ex) | |
{ | |
System::Diagnostics::Trace::WriteLine(System::ObjectExt::ToString(ex)); | |
} | |
System::Console::WriteLine(System::Environment::get_NewLine() + u"Email sent using EML file successfully. " + dstEmail); | |
} |
Ավելի վաղ մենք սովորել էինք Ինչպես ուղարկել նամակ C#-ով-ը։ Մինչդեռ այս թեման կենտրոնանում է այն բանի վրա, թե ինչպես կարող եք Էլփոստ ուղարկել Gmail սերվերին՝ օգտագործելով SMTP Client-ը C++-ում: Այս օրինակն օգտագործելիս կարող եք բացառություն ստանալ, օրինակ՝ «SMTP սերվերը պահանջում է անվտանգ կապ, կամ հաճախորդը չի վավերացվել»: Իրականում, Gmail-ը կասկածում է, որ ձեր հավելվածը պակաս անվտանգ է և արգելում է ձեզ էլփոստ ուղարկել՝ օգտագործելով իրենց SMTP սերվերը: Gmail SMTP-ի խնդիրը լուծելու համար այցելեք allow access to less secure apps to send email թեման: