Invia documento Word nel corpo dell'e-mail utilizzando C++

Le e-mail sono la principale fonte di comunicazione su Internet e nella maggior parte dei casi, il layout e la formattazione dell’e-mail sono importanti. Tuttavia, la maggior parte dei client di posta elettronica non fornisce le opzioni di formattazione avanzate necessarie per la progettazione di contenuti di posta elettronica di alta qualità. In questi casi, come corpo dell’e-mail può essere utilizzato un documento Word ben formattato. In questo articolo imparerai come inviare un documento Word come corpo dell’e-mail usando C++.

API C++ per l’invio di documenti Word nel corpo dell’e-mail

Per inviare un documento Word in un corpo di posta elettronica, utilizzeremo le API Aspose.Words per C++ e Aspose.Email per C++. Il primo consente di generare, modificare e convertire file di Microsoft Word. Considerando che quest’ultimo ti consente di creare, manipolare e convertire file di Outlook. Utilizzeremo l’API Aspose.Words per C++ per convertire il documento Word in formato MHTML e l’API Aspose.Email per C++ per generare e inviare l’e-mail. Puoi installare le API tramite NuGet o scaricarle direttamente dalla sezione Download.

PM> Install-Package Aspose.Words.Cpp
PM> Install-Package Aspose.Email.Cpp

Invio di un documento Word in un corpo di posta elettronica utilizzando C++

Di seguito sono riportati i passaggi per inviare un documento Word in un corpo di posta elettronica:

Il codice di esempio seguente mostra come inviare un documento di Word come corpo di un messaggio di posta elettronica usando C++.

// Percorsi di directory.
System::String sourceDataDir = u"SourceDirectory\\";
System::String outputDataDir = u"OutputDirectory\\";

// Carica il documento di Word usando la classe Aspose.Words Document.
System::SharedPtr<Aspose::Words::Document> doc = System::MakeObject<Aspose::Words::Document>(sourceDataDir + u"Sample 1.docx");

// Salva il documento nel MemoryStream in formato MHTML.
System::SharedPtr<System::IO::MemoryStream> stream = System::MakeObject<System::IO::MemoryStream>();
doc->Save(stream, SaveFormat::Mhtml);

// Riavvolgi lo stream all'inizio in modo che Aspose.Email possa leggerlo.
stream->set_Position(0);

// Crea un'istanza della classe MailMessage
System::SharedPtr<Aspose::Email::MailMessage> message = MailMessage::Load(stream, System::MakeObject<Aspose::Email::MhtmlLoadOptions>());

// Imposta da indirizzo e-mail
message->set_From(u"your_from@email.com");

// Imposta su indirizzo e-mail
message->set_To(u"your_to@email.com");

// Imposta oggetto e-mail
message->set_Subject(u"Aspose.Words + Aspose.Email MHTML Test Message");

// Creare un'istanza della classe SmtpClient
System::SharedPtr<Aspose::Email::Clients::Smtp::SmtpClient> client = System::MakeObject<Aspose::Email::Clients::Smtp::SmtpClient>();

// Imposta l'Host, ad esempio: smtp.gmail.com
client->set_Host(u"your_smtp.com");

// Imposta l'indirizzo e-mail
client->set_Username(u"your_email@email.com");

// Imposta la password
client->set_Password(u"your_password");

// Imposta la porta
client->set_Port(587);

// Imposta le opzioni di sicurezza
client->set_SecurityOptions(SecurityOptions::SSLExplicit);

// Invia il messaggio di posta elettronica
client->Send(message);

Ottieni una licenza gratuita

Puoi provare l’API senza limitazioni di valutazione richiedendo una licenza temporanea gratuita.

Conclusione

In questo articolo, hai imparato come inviare un documento Word in un corpo di posta elettronica usando C++. Per riassumere, hai imparato come convertire un documento Word in formato MHTML usando Aspose.Words per l’API C++ e come inviare MHTML come e-mail usando Aspose.Email per l’API C++. Entrambe queste API forniscono numerose funzionalità per lavorare con MS Word e file di posta elettronica. Puoi esplorare queste API in dettaglio visitando la loro documentazione ufficiale. In caso di domande, non esitare a contattarci sul nostro forum di supporto gratuito.

Guarda anche