Fonctionnalités

Aperçu des fonctionnalités

Aspose.Email FOSS for C++ fournit une API à plusieurs niveaux pour travailler avec les fichiers Outlook MSG et
les conteneurs Compound File Binary (CFB). La bibliothèque comprend 26 classes publiques réparties sur deux
sous‑systèmes : CFB et MSG/MAPI.


Accès au conteneur CFB

Le sous‑système CFB lit et écrit le format Microsoft Compound File Binary — le format de conteneur sous‑jacent aux fichiers Outlook .msg.

ClasseObjectif
cfb_readerOuvrir et parcourir les fichiers CFB existants
cfb_writerSérialiser les documents CFB en octets ou en fichiers
cfb_documentReprésentation en mémoire d’un fichier CFB
cfb_nodeNœud de stockage ou de flux individuel dans l’arborescence du répertoire
cfb_storageEntrée de stockage nommée
cfb_streamFlux nommé contenant des données binaires

Opérations clés :

  • Ouvrir à partir d’un fichier, d’un flux ou d’octets : cfb_reader::from_file(), cfb_reader::from_stream(), cfb_reader::from_bytes(), cfb_reader::from_buffer()
  • Énumérer le contenu : storage_ids(), stream_ids(), child_ids(), directory_entry_count()
  • Naviguer par chemin : find_child_by_name(), resolve_path()
  • Inspecter les nœuds : cfb_node::is_storage(), cfb_node::is_stream(), creation_time(), modified_time()
  • Écrire les conteneurs : cfb_writer::to_bytes(), cfb_writer::write_file(), cfb_writer::write_stream()

Lecture et écriture de fichiers MSG

Le sous‑système MSG gère le format de message Outlook au-dessus de CFB.

ClasseObjectif
msg_readerOuvrir et analyser les fichiers MSG
msg_writerSérialiser les documents MSG
msg_documentReprésentation en mémoire d’un fichier MSG

Opérations clés :

  • Ouvrir les fichiers MSG : msg_reader::from_file(), msg_reader::from_stream()
  • Inspecter les métadonnées : msg_document::major_version(), msg_document::minor_version(), msg_document::strict()
  • Écrire des fichiers MSG : msg_writer::to_bytes(), msg_writer::write_file(), msg_writer::write_stream()
  • Convertir en CFB : msg_document::to_cfb_document() for low-level CFB access

API de message MAPI de haut niveau

La classe mapi_message fournit une interface de haut niveau pour créer, lire et convertir des messages électroniques.

Création de messages :

  • mapi_message::create() — créer un nouveau message avec sujet et corps
  • set_subject(), set_body(), set_html_body() — définir le contenu du message
  • set_sender_name(), set_sender_email_address(), set_sender_address_type() — définir l’expéditeur
  • set_internet_message_id() — définir l’en-tête Message-ID
  • set_message_class() — définir la classe de message MAPI
  • unicode_strings() / set_unicode_strings() — contrôler le codage des chaînes Unicode

Chargement des messages :

  • mapi_message::from_file() — charger à partir d’un chemin de fichier
  • mapi_message::from_stream() — charger à partir d’un flux d’entrée
  • mapi_message::from_msg_document() — charger à partir d’un msg_document

Enregistrement des messages :

  • save() — sérialiser en octets, flux ou fichier
  • to_msg_document() — convertir en un msg_document pour un accès bas‑niveau

Pièces jointes :

  • mapi_attachment::from_bytes(), mapi_attachment::from_stream() — charger les données de la pièce jointe
  • mapi_attachment::is_embedded_message() — vérifier si la pièce jointe est un MSG intégré
  • mapi_attachment::load_data() — charger paresseusement le contenu de la pièce jointe

Propriétés MAPI:

  • mapi_property::property_id(), property_type(), property_tag() — identification de propriétés
  • mapi_property::set_value(), flags(), set_flags() — manipulation de propriétés
  • mapi_property_collection::remove() — supprimer des propriétés d’une collection

Conversion EML et MIME

Convertir entre le format Outlook MSG et le format EML standard (RFC 5322 / MIME) :

  • mapi_message::load_from_eml() — analyser un fichier .eml en mapi_message
  • mapi_message::save_to_eml() — sérialiser un mapi_message au format EML

L’objet, le corps, l’expéditeur, les destinataires et les pièces jointes sont conservés lors des allers-retours.


Énumérations et constantes

EnumObjectif
common_message_property_idIdentifiants de propriétés MAPI standard (objet, corps, expéditeur, pièces jointes)
property_type_codeCodes de type de propriété MAPI (entier, chaîne, binaire, temps, GUID)
msg_storage_roleRôles de stockage dans les fichiers MSG (message, destinataire, pièce jointe)
directory_object_typeTypes d’entrée de répertoire CFB (stockage, flux, racine)
directory_color_flagIndicateurs de couleur d’arbre rouge-noir pour les entrées de répertoire CFB
sector_markerValeurs de secteur spéciales dans les tables d’allocation de fichiers CFB
 Français