DOCX JPG PDF XML PST
  Product Family
MSG

Convertir PST a MSG en C++

Conversión de PST a MSG de alto rendimiento utilizando la biblioteca Email para C++.

Cómo convertir PST a MSG usando C++

Para convertir PST a MSG, utilizaremos

Aspose.Email para C++

API que es una manipulación y conversión de documentos rica en funciones, potente y fácil de usar para la plataforma C++. Puede descargar su última versión directamente, solo abra

NuGet

Administrador de paquetes, busque Aspose.Email.Cpp e instale. También puede usar el siguiente comando desde la consola del Administrador de paquetes.

Comando

PM> Install-Package Aspose.Email.Cpp

Pasos para convertir PST a MSG mediante C++

Los programadores de C++ pueden convertir fácilmente un archivo PST a MSG con solo unas pocas líneas de código.

  • Cargue el archivo PST con PersonalStorage::FromFile.
  • Llame al método SaveAs() con dos parámetros.
  • Salida del archivo MSG y FileFormat::Msg como parámetros.
  • El archivo MSG se guardará en la ruta especificada.
  • Abra el archivo MSG en un programa compatible.

Requisitos del sistema

Antes de ejecutar el código de conversión C++, asegúrese de contar con los siguientes requisitos previos.

  • Microsoft Windows o un sistema operativo compatible con el entorno de ejecución C++ para Windows de 32 bits, Windows de 64 bits y Linux de 64 bits.
  • DLL de Aspose.Email para C++ referenciada en su proyecto.
 

Convertir PST a MSG - C++

// Load the Outlook PST file
System::SharedPtr<PersonalStorage> personalStorage = PersonalStorage::FromFile(dataDir + L"SampleContacts.pst");
// Get the Contacts folder
System::SharedPtr<FolderInfo> folderInfo = personalStorage->get_RootFolder()->GetSubFolder(L"Contacts");
// Loop through all the contacts in this folder
System::SharedPtr<MessageInfoCollection> messageInfoCollection = folderInfo->GetContents();
    
{
    auto messageInfo_enumerator = (messageInfoCollection)->GetEnumerator();
    decltype(messageInfo_enumerator->get_Current()) messageInfo;
    while (messageInfo_enumerator->MoveNext() && (messageInfo = messageInfo_enumerator->get_Current(), true))
    {
        // Get the contact information
        System::SharedPtr<MapiMessage> mapi = personalStorage->ExtractMessage(messageInfo);
        
        System::SharedPtr<MapiContact> contact = System::DynamicCast<Aspose::Email::Outlook::MapiContact>(mapi->ToMapiMessageItem());
        
        // Save to disk in MSG format
        if (contact->get_NameInfo()->get_DisplayName() != nullptr)
        {
            System::SharedPtr<MapiMessage> message = personalStorage->ExtractMessage(messageInfo);
            // Get rid of illegal characters that cannot be used as a file name
            System::String messageName = message->get_Subject().Replace(L":", L" ").Replace(L"\\", L" ").Replace(L"?", L" ").Replace(L"/", L" ");
            message->Save(dataDir + L"Contacts\\" + messageName + L"_out.msg");
        }
    }
}  
 
  • PST to MSG Conversion Live Demos

    Otras conversiones compatibles

    También puede convertir PST a muchos otros formatos de archivo, incluidos los que se enumeran a continuación.

    PST TO EML (Mensajes de correo de Outlook)
    PST TO EMLX (Formato Apple EMLX)
    PST TO HTML (Lenguaje de marcado de hipertexto)
    PST TO ICS (iCalendar)
    PST TO MBOX (Mensajes de correo electrónico)
    PST TO MHTML (Formato de archivo de página web)
    PST TO OFT (Plantillas de correo de Outlook)
    PST TO OST (Archivos de almacenamiento sin conexión)
    PST TO VCF (Formato de tarjeta virtual)