Электронная почта является основным источником общения через Интернет, и в большинстве случаев важна структура и форматирование электронной почты. Однако большинство почтовых клиентов не предоставляют расширенных параметров форматирования, необходимых для разработки высококачественного содержимого электронной почты. В таких случаях хорошо отформатированный документ Word можно использовать в качестве тела электронного письма. В этой статье вы узнаете, как отправить документ Word в качестве тела сообщения электронной почты с помощью C++.
- C++ API для отправки документов Word в теле письма
- Отправка документа Word в теле сообщения электронной почты с использованием C++
C++ API для отправки документов Word в теле письма
Чтобы отправить документ Word в теле письма, мы будем использовать API Aspose.Words для C++ и Aspose.Email для C++. Первый позволяет создавать, изменять и конвертировать файлы Microsoft Word. Принимая во внимание, что последний позволяет создавать, манипулировать и конвертировать файлы Outlook. Мы будем использовать Aspose.Words для C++ API для преобразования документа Word в формат MHTML и Aspose.Email для C++ API для создания и отправки электронной почты. Вы можете либо установить API через NuGet, либо загрузить их напрямую из раздела Загрузки.
PM> Install-Package Aspose.Words.Cpp
PM> Install-Package Aspose.Email.Cpp
Отправка документа Word в теле сообщения электронной почты с использованием C++
Ниже приведены шаги для отправки документа Word в теле сообщения электронной почты:
- Загрузите документ Word с помощью класса Aspose::Words::Document.
- Создайте экземпляр класса MemoryStream.
- Сохраните документ Word в MemoryStream в формате MHTML.
- Создайте экземпляр класса Aspose::Email::MailMessage, используя MHTML, сохраненный в MemoryStream.
- Установите Кому, От и Тему сообщения электронной почты.
- Создайте экземпляр класса Aspose::Email::Clients::Smtp::SmtpClient.
- Установите хост, имя пользователя, пароль, порт и параметры безопасности.
- Отправьте сообщение электронной почты, используя команду [SmtpClient->Send(System::SharedPtr сообщение) 11 метод.
В следующем примере кода показано, как отправить документ Word в виде тела сообщения электронной почты с помощью C++.
// Пути каталогов.
System::String sourceDataDir = u"SourceDirectory\\";
System::String outputDataDir = u"OutputDirectory\\";
// Загрузите документ Word, используя класс Aspose.Words Document.
System::SharedPtr<Aspose::Words::Document> doc = System::MakeObject<Aspose::Words::Document>(sourceDataDir + u"Sample 1.docx");
// Сохраните документ в MemoryStream в формате MHTML.
System::SharedPtr<System::IO::MemoryStream> stream = System::MakeObject<System::IO::MemoryStream>();
doc->Save(stream, SaveFormat::Mhtml);
// Перемотайте поток в начало, чтобы Aspose.Email мог его прочитать.
stream->set_Position(0);
// Создайте экземпляр класса MailMessage
System::SharedPtr<Aspose::Email::MailMessage> message = MailMessage::Load(stream, System::MakeObject<Aspose::Email::MhtmlLoadOptions>());
// Установить с адреса электронной почты
message->set_From(u"your_from@email.com");
// Установить на адрес электронной почты
message->set_To(u"your_to@email.com");
// Установить тему электронной почты
message->set_Subject(u"Aspose.Words + Aspose.Email MHTML Test Message");
// Создайте экземпляр класса SmtpClient.
System::SharedPtr<Aspose::Email::Clients::Smtp::SmtpClient> client = System::MakeObject<Aspose::Email::Clients::Smtp::SmtpClient>();
// Установите хост, например: smtp.gmail.com
client->set_Host(u"your_smtp.com");
// Установите адрес электронной почты
client->set_Username(u"your_email@email.com");
// Установите пароль
client->set_Password(u"your_password");
// Установите порт
client->set_Port(587);
// Установите параметры безопасности
client->set_SecurityOptions(SecurityOptions::SSLExplicit);
// Отправить сообщение электронной почты
client->Send(message);
Получить бесплатную лицензию
Вы можете попробовать API без ограничений по ознакомительной версии, запросив бесплатную временную лицензию.
Вывод
В этой статье вы узнали, как отправить документ Word в теле письма с помощью C++. Подводя итог, вы узнали, как преобразовать документ Word в формат MHTML с помощью Aspose.Words for C++ API и как отправить MHTML в виде электронного письма с помощью Aspose.Email для C++ API. Оба этих API предоставляют множество функций для работы с файлами MS Word и электронной почты. Вы можете подробно изучить эти API, посетив их официальную документацию. Если у вас возникнут вопросы, свяжитесь с нами на нашем бесплатном форуме поддержки.