In diesem Beispiel untersuchen wir, wie Word Document mit C++ per E-Mail gesendet wird. Im folgenden Beispielcode werden Sie Zeuge, wie bequem es ist, DOC im E-Mail-Text mit C++ zu senden**. Sie müssen nur einfache API-Aufrufe tätigen und einige einfache Schritte unter MS Windows ausführen, um dies zu erreichen.
Schritte zum Senden von Word-Dokumenten per E-Mail mit C++
- Konfigurieren Sie Aspose.Words.Cpp und Aspose.Email.Cpp mit dem NuGet-Paket-Manager-Tool
- Fügen Sie den Verweis auf die Namespaces Aspose::Words und Aspose::Email hinzu
- Instanziieren Sie das Document Class-Objekt in DOCX, um es im E-Mail-Text zu senden
- Speichern Sie DOCX im MHTML-Zwischenformat mit Stream
- Laden Sie MHTML mithilfe der MailMessage-Klasseninstanz von Aspose.Email und legen Sie die Nachrichteneigenschaften fest
- Initialisieren Sie die SmtpClient-Klasseninstanz, um MailMessage als E-Mail zu senden
In diesen Schritten haben wir festgestellt, wie man E-Mails aus DOCX mit C++ erstellt. Dazu muss im ersten Schritt die DOC-Datei zum Versenden als E-Mail geladen und als MHTML-Zwischenformat mit Stream gespeichert werden. Dann wird unter Verwendung der MailMessage-Klasse-Instanz das Zwischenformat MHTML zusammen mit der Einstellung anderer E-Mail-Eigenschaften geladen. Schließlich wird die E-Mail unter Verwendung der Clientklasse SMTP gesendet.
Code zum Senden von Word-Dokumenten per E-Mail mit C++
#pragma once | |
#include <cstdint> | |
#include <iostream> | |
#include <Aspose.Words.Cpp/Document.h> | |
#include <Aspose.Words.Cpp/SaveFormat.h> | |
#include <Aspose.Words.Cpp/Saving/SaveOutputParameters.h> | |
#include <Aspose.Words.Cpp/License.h> | |
#include <system/exceptions.h> | |
#include <Clients/SecurityOptions.h> | |
#include <Clients/Smtp/SmtpClient/SmtpClient.h> | |
#include <Licensing/License.h> | |
#include <MsgLoadOptions.h> | |
#include <EmlLoadOptions.h> | |
#include <MhtmlLoadOptions.h> | |
#include <MailMessage.h> | |
#include <system/shared_ptr.h> | |
#include <system/object.h> | |
#include <system/io/file.h> | |
#include <system/io/memory_stream.h> | |
#include <system/io/file_stream.h> | |
using namespace Aspose::Email; | |
using System::MakeObject; | |
using System::SharedPtr; | |
using System::String; | |
using namespace Aspose::Words; | |
using namespace System; | |
using namespace System::IO; | |
void DocumentToEmail() | |
{ | |
// Setting the API license for Aspose.Words for C++ | |
System::String TotalLicFilePath = u"Aspose.Total.CPP.lic"; | |
SharedPtr<Aspose::Words::License> WordsCPPLicense = System::MakeObject<Aspose::Words::License>(); | |
WordsCPPLicense->SetLicense(TotalLicFilePath); | |
// Set the license for Aspose.Email for C++ | |
SharedPtr<Aspose::Email::License> EmailLicense = System::MakeObject<Aspose::Email::License>(); | |
EmailLicense->SetLicense(TotalLicFilePath); | |
SharedPtr<Document> DocumentEmail = MakeObject<Document>( u"EmailDocument.docx"); | |
// Save into a memory stream in MHTML format. | |
SharedPtr<System::IO::Stream> stream = System::MakeObject<System::IO::MemoryStream>(); | |
DocumentEmail->Save(stream, SaveFormat::Mhtml); | |
// Reset the stream position to start so that Aspose.Email can read it. | |
stream->set_Position(0); | |
// Create an Aspose.Email message from the saved stream | |
SharedPtr<MailMessage > EmailMessage = MakeObject<Aspose::Email::MailMessage>(); | |
// Load the file in MHTML format | |
EmailMessage = MailMessage::Load(stream, System::MakeObject<MhtmlLoadOptions>()); | |
EmailMessage->set_From(u"your_from_email@email.com"); | |
EmailMessage->set_To(u"your_to_email@email.com"); | |
EmailMessage->set_Subject(u"Test Message using Aspose. Words and Aspose.Email APIs"); | |
// Initialize SMTP client and it's properties to send email | |
SharedPtr<Aspose::Email::Clients::Smtp::SmtpClient> EmailSmtpClient = MakeObject<Aspose::Email::Clients::Smtp::SmtpClient>(); | |
EmailSmtpClient->set_Host(u"smtp.gmail.com"); | |
EmailSmtpClient->set_Username(u"YourEmail@gmail.com"); | |
EmailSmtpClient->set_Password(u"Your Gamil Password"); | |
EmailSmtpClient->set_Port(587); | |
EmailSmtpClient->set_SecurityOptions(Aspose::Email::Clients::SecurityOptions::SSLExplicit); | |
// Send word email message | |
EmailSmtpClient->Forward(u"Sender@domain.com", u"Recipient@domain.com", EmailMessage); | |
} |
Im obigen Beispiel senden wir ein Dokument per E-Mail mit C++ in zwei Phasen. Die erste Phase bestand aus dem Laden des DOCX-Dokuments und dem Speichern als MHTML-Datei mithilfe von Streams. In der zweiten Phase haben wir die MailMessage-Klasse verwendet, um MHTML zu laden und seine anderen E-Mail-Eigenschaften festzulegen. Dann verwenden wir SmtpClient-Klasse und verschicken Dokumente per E-Mail mit C++.
In diesem Thema haben wir uns darauf konzentriert, wie Sie E-Mails aus DOCX in C++ erstellen. Wenn Sie an der Konvertierung von DOCX-Dateien in Tiff-Dateien interessiert sind, können Sie den Artikel auf wie man Word mit C++ in Tiff umwandelt besuchen.