Вы разработчик C++ и хотите добавить функции преобразования электронной почты в свои приложения? Используя Aspose.Msg для C++ , вы можете преобразовать формат файла MSG в HTML. После этого, используя API Aspose.Words for C++ , вы можете экспортировать HTML в EMF. Оба API входят в пакет Aspose.Total for C++ .
C++ API для преобразования MSG в EMF
- Откройте файл MSG, используя ссылку на класс MailMessage .
- Преобразуйте MSG в HTML с помощью функции-члена Save .
- Загрузите HTML с помощью класса Document .
- Сохраните документ в формате EMF с помощью метода Save и установите Emf в качестве SaveFormat.
Требования к конвертации
Установите из командной строки как nuget install Aspose.Total.Cpp
или через консоль диспетчера пакетов Visual Studio с помощью Install-Package Aspose.Total.Cpp
.
Кроме того, вы можете получить автономный установщик MSI или библиотеки DLL в ZIP-файле из загрузки .
// load the MSG file to be converted
System::SharedPtr<MailMessage> msg = MailMessage::Load(u"sourceFile.msg");
// save MSG 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 Emf as save format
doc->Save(u"convertedFile.Emf");
Разобрать файл MSG через C++
Вы можете не только конвертировать MSG в EMF, но и читать, манипулировать и анализировать документ MSG. Вы можете получить информацию о теме, адресе, теле и получателях электронной почты, используя класс MapiMessage API Aspose.Msg для C++ . Например, вы можете проверить адрес электронной почты отправителя для конверсии, используя свойство get_SenderMsgAddress().
// create an instance of MapiMessage from file
System::SharedPtr<MapiMessage> msg = MapiMessage::FromFile(dataDir + L"message.msg");
// get subject
System::Console::WriteLine(System::String(L"Subject:") + msg->get_Subject());
// get from address
System::Console::WriteLine(System::String(L"From:") + msg->get_SenderMsgAddress());
// 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 для ограничения редактирования формата файла EMF
Вы также можете добавить функции защиты документов в свое приложение при экспорте документа из MSG в EMF. Добавление защиты к вашему документу — это простой процесс, так как все, что вам нужно сделать, это применить метод защиты к вашему документу. Вы можете установить тип защиты 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.Emf");