Вы разработчик C++ и хотите добавить функции преобразования электронной почты в свои приложения? Используя Aspose.Emlx для C++ , вы можете преобразовать формат файла EMLX в HTML. После этого, используя API Aspose.Words for C++ , вы можете экспортировать HTML в DOCX. Оба API входят в пакет Aspose.Total for C++ .
C++ API для преобразования EMLX в DOCX
- Откройте файл EMLX, используя ссылку на класс MailMessage .
- Преобразуйте EMLX в HTML с помощью функции-члена Save .
- Загрузите HTML с помощью класса Document .
- Сохраните документ в формате DOCX с помощью метода Save и установите Docx в качестве SaveFormat.
Требования к конвертации
Установите из командной строки как nuget install Aspose.Total.Cpp
или через консоль диспетчера пакетов Visual Studio с помощью Install-Package Aspose.Total.Cpp
.
Кроме того, вы можете получить автономный установщик MSI или библиотеки DLL в ZIP-файле из загрузки .
// load the EMLX file to be converted
System::SharedPtr<MailMessage> msg = MailMessage::Load(u"sourceFile.emlx");
// save EMLX as a HTML
msg->Save(u"HtmlOutput.html", SaveOptions::get_DefaultHtml());
// load HTML with an instance of Document
System::SharedPtr<Document> doc = System::MakeObject<Document>(u"HtmlOutput.html");
// call save method while passing Docx as save format
doc->Save(u"convertedFile.Docx");
Разобрать файл EMLX через C++
Вы можете не только конвертировать EMLX в DOCX, но и читать, манипулировать и анализировать документ EMLX. Вы можете получить информацию о теме, адресе, теле и получателях электронной почты, используя класс MapiMessage API Aspose.Emlx для C++ . Например, вы можете проверить адрес электронной почты отправителя для конверсии, используя свойство get_SenderEmlxAddress().
// create an instance of MapiMessage from file
System::SharedPtr<MapiMessage> msg = MapiMessage::FromFile(dataDir + L"message.emlx");
// get subject
System::Console::WriteLine(System::String(L"Subject:") + msg->get_Subject());
// get from address
System::Console::WriteLine(System::String(L"From:") + msg->get_SenderEmlxAddress());
// get body
System::Console::WriteLine(System::String(L"Body") + msg->get_Body());
// get recipients information
System::Console::WriteLine(System::String(L"Recipient: ") + msg->get_Recipients());
C++ API для ограничения редактирования формата файла DOCX
Вы также можете добавить функции защиты документов в свое приложение при экспорте документа из EMLX в DOCX. Добавление защиты к вашему документу — это простой процесс, так как все, что вам нужно сделать, это применить метод защиты к вашему документу. Вы можете установить тип защиты ReadOnly, чтобы запретить пользователю редактировать документ.
// create a new document and protect it with a password.
auto doc = System::MakeObject<Document>();
// apply Document Protection.
doc->Protect(ProtectionType::ReadOnly, u"password");
// save the document.
doc->Save(u"DocumentProtection.PasswordProtection.Docx");