Você é um desenvolvedor C++ que deseja adicionar recursos de conversão de e-mail em seus aplicativos? Usando Aspose.Emlx for C++ você pode converter o formato de arquivo EMLX para HTML. Depois disso, usando a API Aspose.Words for C++ , você pode exportar HTML para XPS. Ambas as APIs estão no pacote Aspose.Total for C++ .
API C++ para converter EMLX em XPS
- Abra o arquivo EMLX usando a referência de classe MailMessage
- Converta EMLX para HTML usando a função de membro Save
- Carregue o HTML usando a classe Document
- Salve o documento no formato XPS usando o método Save e defina Xps como SaveFormat
Requisitos de conversão
Instale a partir da linha de comando como nuget install Aspose.Total.Cpp
ou via Package Manager Console do Visual Studio com Install-Package Aspose.Total.Cpp
.
Como alternativa, obtenha o instalador MSI offline ou as DLLs em um arquivo ZIP em downloads .
// 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 Xps as save format
doc->Save(u"convertedFile.Xps");
Analisar arquivo EMLX via C++
Não só você pode converter seu EMLX para XPS, mas também ler, manipular e analisar o documento EMLX. Você pode obter informações de assunto, endereço, corpo e destinatários do e-mail usando a classe MapiMessage da API Aspose.Emlx for C++ . Por exemplo, você pode verificar um e-mail de remetente específico para a conversão usando a propriedade 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());
API C++ para restringir a edição de formato de arquivo XPS
Você também pode adicionar recursos de proteção de documentos em seu aplicativo enquanto exporta o documento de EMLX para XPS. Adicionar proteção ao seu documento é um processo simples, pois tudo o que você precisa fazer é aplicar o método de proteção ao seu documento. Você pode definir o tipo de proteção como ReadOnly para restringir o usuário a editar o documento.
// 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.Xps");