Skapa Outlook-e-postmeddelanden i C++

E-postautomatisering är ganska populärt idag för att generera och skicka e-postmeddelanden automatiskt från webben eller skrivbordsapplikationer. Den används för att skicka viktiga meddelanden, dokument, nyhetsbrev och olika typer av andra meddelanden. För att utveckla ett automatiserat e-postsystem underlättar Aspose utvecklarna med sitt e-post-API - Aspose.Email. Idag ska jag plocka upp C++-varianten av Aspose.Email och visa dig hur du skapar Outlook-e-postmeddelanden med C++.

C++ e-postbibliotek för att skapa Outlook-e-postmeddelanden

Aspose.Email for C++ är ett inbyggt C++-bibliotek som låter dig skapa och skicka e-postmeddelanden av MS Outlook och andra populära e-postformat. Det låter dig också manipulera Outlook-objekt som kalendrar, uppgifter, kontakter etc. och konvertera befintliga e-postfiler till andra format. Du kan ladda ner hela bibliotekspaketet från här eller installera det i din C++-applikation med NuGet.

Skapa ett Outlook-e-postmeddelande med C++

Låt oss först av allt kolla in hur man skapar ett enkelt e-postmeddelande och sparar det i ett e-postformat som MSG, EML och EMLX. Följande är stegen för att skapa ett e-postmeddelande med Aspose.Email för C++.

  • Skapa en instans av klassen MailMessage.
  • Ställ in meddelandets egenskaper som Till, Från och Brödtext.
  • Spara e-postmeddelandet med metoden MailMessage->Save().

Följande kodexempel visar hur man skapar ett Outlook-meddelande i ett visst e-postformat med C++.

// Skapa en ny instans av klassen MailMessage
System::SharedPtr<MailMessage> message = System::MakeObject<MailMessage>();

// Ange ämne för meddelandet, HTML-text och avsändarinformation
message->set_Subject(u"New message created by Aspose.Email for .NET"); 
message->set_From(System::MakeObject<MailAddress>(L"from@domain.com", L"Sender Name", false));
message->set_Body(System::String(u"This is a plain text."));
// Lägg till TO-mottagare och Lägg till CC-mottagare
message->get_To()->Add(System::MakeObject<MailAddress>(L"to1@domain.com", L"Recipient 1", false));
message->get_To()->Add(System::MakeObject<MailAddress>(L"to2@domain.com", L"Recipient 2", false));
message->get_CC()->Add(System::MakeObject<MailAddress>(L"cc1@domain.com", L"Recipient 3", false));
message->get_CC()->Add(System::MakeObject<MailAddress>(L"cc2@domain.com", L"Recipient 4", false));

// Spara meddelande i EML, EMLX, MSG-format
message->Save(u"CreateNewMailMessage_out.eml", SaveOptions::get_DefaultEml());
message->Save(u"CreateNewMailMessage_out.emlx", SaveOptions::CreateSaveOptions(MailMessageSaveType::get_EmlxFormat()));
message->Save(u"CreateNewMailMessage_out.msg", SaveOptions::get_DefaultMsgUnicode()); 

Skapa ett Outlook-e-postmeddelande med HTML Body med C++

I det föregående exemplet har vi skapat ett mejl med vanlig text. Men de flesta e-postmeddelanden innehåller idag en HTML-text för en fin presentation av e-postmeddelandets innehåll. I ett sådant fall kan du konfigurera Aspose.Email och ställa in den HTML-baserade texten i e-postmeddelandet. För detta, använd bara MailMessage->setHtmlBody(System::String) och skicka HTML-innehållet till det. Följande kodexempel visar hur man skapar ett e-postmeddelande med en HTML-text med C++.

// Skapa en ny instans av klassen MailMessage
System::SharedPtr<MailMessage> message = System::MakeObject<MailMessage>();

// Ange ämne för meddelandet, HTML-text och avsändarinformation
message->set_Subject(u"New message created by Aspose.Email for .NET");
message->set_From(System::MakeObject<MailAddress>(L"from@domain.com", L"Sender Name", false));
message->set_HtmlBody(System::String(u"<b>This line is in bold.</b> <br/> <br/>") + u"<font color=blue>This line is in blue color</font>");
// Lägg till TO-mottagare och Lägg till CC-mottagare
message->get_To()->Add(System::MakeObject<MailAddress>(L"to1@domain.com", L"Recipient 1", false)); 
message->get_CC()->Add(System::MakeObject<MailAddress>(L"cc1@domain.com", L"Recipient 3", false)); 

// Spara meddelande i EML, EMLX, MSG-format 
message->Save(u"CreateNewMailMessage_out.emlx", SaveOptions::CreateSaveOptions(MailMessageSaveType::get_EmlxFormat()));
message->Save(u"CreateNewMailMessage_out.msg", SaveOptions::get_DefaultMsgUnicode()); 

Ställ in kodning för Outlook-e-post med C++

Aspose.Email för C++ låter dig också definiera kodningsstandarden för att vägleda webbläsaren om hur man hanterar tecken i e-postmeddelandet. För att ställa in den specifika kodningsstandarden kan du använda metoden MailMessage->setBodyEncoding(System::Text::Encoding). Följande kodexempel visar hur man skapar ett e-postmeddelande med speciell kodning med C++.

// Skapa en ny instans av klassen MailMessage
System::SharedPtr<MailMessage> message = System::MakeObject<MailMessage>();

// Ange ämne för meddelandet, HTML-text och avsändarinformation
message->set_Subject(u"New message created by Aspose.Email for .NET");
message->set_From(System::MakeObject<MailAddress>(L"from@domain.com", L"Sender Name", false));
message->set_Body(System::String(u"This is a plain text."));
message->set_BodyEncoding(System::Text::Encoding::get_ASCII());
// Lägg till TO-mottagare och Lägg till CC-mottagare
message->get_To()->Add(System::MakeObject<MailAddress>(L"to1@domain.com", L"Recipient 1", false)); 
message->get_CC()->Add(System::MakeObject<MailAddress>(L"cc1@domain.com", L"Recipient 3", false)); 

// Spara meddelande i EML, EMLX, MSG-format
message->Save(u"CreateNewMailMessage_out.eml", SaveOptions::get_DefaultEml()); 
message->Save(u"CreateNewMailMessage_out.msg", SaveOptions::get_DefaultMsgUnicode());

Spara Outlook-meddelande som utkast med C++

Du kan också spara det nyskapade Outlook-e-postmeddelandet som ett utkast. Följande är stegen för att utföra denna operation:

Följande kodexempel visar hur man skapar ett e-postmeddelande som ett utkast med C++.

// Skapa en ny instans av klassen MailMessage
System::SharedPtr<MailMessage> message = System::MakeObject<MailMessage>();

// Ange ämne för meddelandet, HTML-text och avsändarinformation
message->set_Subject(u"New message created by Aspose.Email for .NET");
message->set_From(System::MakeObject<MailAddress>(L"from@domain.com", L"Sender Name", false));
message->set_Body(System::String(u"This is a plain text.")); 
// Lägg till TO-mottagare och Lägg till CC-mottagare
message->get_To()->Add(System::MakeObject<MailAddress>(L"to1@domain.com", L"Recipient 1", false)); 
message->get_CC()->Add(System::MakeObject<MailAddress>(L"cc1@domain.com", L"Recipient 3", false));

// Skapa en instans av typen MapiMessage från MailMessage, Ställ meddelandeflagga till ej skickat (utkaststatus) och spara den
System::SharedPtr<MapiMessage> mapiMsg = MapiMessage::FromMailMessage(message);
mapiMsg->SetMessageFlags(Aspose::Email::Mapi::MapiMessageFlags::MSGFLAG_UNSENT);

// Spara meddelande i EML, EMLX, MSG MHTML-format 
message->Save(u"CreateNewMailMessage_out.emlx", SaveOptions::CreateSaveOptions(MailMessageSaveType::get_EmlxFormat()));
message->Save(u"CreateNewMailMessage_out.msg", SaveOptions::get_DefaultMsgUnicode());

Livedemos

Slutsats

I den här artikeln har jag visat dig hur du skapar Outlook-e-postmeddelanden i C++-applikationer. C++-kodexemplen visade hur man skapar MSG-, EML- eller EMLX-e-postmeddelanden med text/HTML-text eller en speciell kodning. Du kan utforska mer om hur du hanterar Outlook-e-post och andra objekt med Aspose.Email för C++.

Se även