Envoyer un document Word dans le corps de l'e-mail à l'aide de C++

Les e-mails sont la principale source de communication sur Internet et dans la majorité des cas, la mise en page et le formatage de l’e-mail sont importants. Cependant, la plupart des clients de messagerie ne fournissent pas les options de formatage avancées requises pour concevoir un contenu de messagerie de haute qualité. Dans de tels cas, un document Word bien formaté peut être utilisé comme corps de l’e-mail. Dans cet article, vous apprendrez à envoyer un document Word comme corps de l’e-mail à l’aide de C++.

API C++ pour l’envoi de documents Word dans le corps d’un e-mail

Afin d’envoyer un document Word dans le corps d’un e-mail, nous utiliserons les API Aspose.Words for C++ et Aspose.Email for C++. Le premier vous permet de générer, modifier et convertir des fichiers Microsoft Word. Alors que ce dernier vous permet de créer, manipuler et convertir des fichiers Outlook. Nous utiliserons Aspose.Words for C++ pour convertir le document Word au format MHTML et Aspose.Email for C++ pour générer et envoyer l’e-mail. Vous pouvez soit installer les API via NuGet, soit les télécharger directement à partir de la section Téléchargements.

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

Envoi d’un document Word dans un corps d’e-mail à l’aide de C++

Voici les étapes pour envoyer un document Word dans un corps d’e-mail :

L’exemple de code suivant montre comment envoyer un document Word en tant que corps d’un e-mail à l’aide de C++.

// Chemins de répertoire.
System::String sourceDataDir = u"SourceDirectory\\";
System::String outputDataDir = u"OutputDirectory\\";

// Chargez le document Word à l'aide de la classe Aspose.Words Document.
System::SharedPtr<Aspose::Words::Document> doc = System::MakeObject<Aspose::Words::Document>(sourceDataDir + u"Sample 1.docx");

// Enregistrez le document dans le MemoryStream au format MHTML.
System::SharedPtr<System::IO::MemoryStream> stream = System::MakeObject<System::IO::MemoryStream>();
doc->Save(stream, SaveFormat::Mhtml);

// Rembobinez le flux jusqu'au début pour qu'Aspose.Email puisse le lire.
stream->set_Position(0);

// Créer une instance de la classe MailMessage
System::SharedPtr<Aspose::Email::MailMessage> message = MailMessage::Load(stream, System::MakeObject<Aspose::Email::MhtmlLoadOptions>());

// Définir l'adresse e-mail de l'expéditeur
message->set_From(u"your_from@email.com");

// Définir sur l'adresse e-mail
message->set_To(u"your_to@email.com");

// Définir l'objet de l'e-mail
message->set_Subject(u"Aspose.Words + Aspose.Email MHTML Test Message");

// Créer une instance de la classe SmtpClient
System::SharedPtr<Aspose::Email::Clients::Smtp::SmtpClient> client = System::MakeObject<Aspose::Email::Clients::Smtp::SmtpClient>();

// Définissez l'hôte, par exemple : smtp.gmail.com
client->set_Host(u"your_smtp.com");

// Définir l'adresse e-mail
client->set_Username(u"your_email@email.com");

// Définir le mot de passe
client->set_Password(u"your_password");

// Définir le port
client->set_Port(587);

// Définir les options de sécurité
client->set_SecurityOptions(SecurityOptions::SSLExplicit);

// Envoyer le message électronique
client->Send(message);

Obtenez une licence gratuite

Vous pouvez essayer l’API sans limites d’évaluation en demandant une licence temporaire gratuite.

Conclusion

Dans cet article, vous avez appris à envoyer un document Word dans le corps d’un e-mail à l’aide de C++. Pour résumer, vous avez appris à convertir un document Word au format MHTML à l’aide de l’API Aspose.Words for C++ et à envoyer du MHTML par e-mail à l’aide de l’API Aspose.Email for C++. Ces deux API fournissent de nombreuses fonctionnalités pour travailler avec MS Word et les fichiers de courrier électronique. Vous pouvez explorer ces API en détail en visitant leur documentation officielle. En cas de questions, n’hésitez pas à nous contacter sur notre forum d’assistance gratuit.

Voir également