Funcționalități

Prezentare generală a funcționalității

Aspose.Email FOSS for C++ oferă un API stratificat pentru lucrul cu fișierele Outlook MSG și
containerele Compound File Binary (CFB). Biblioteca are 26 de clase publice în două
subsisteme: CFB și MSG/MAPI.


CFB Acces la container

Subsistemul CFB citește și scrie formatul Microsoft Compound File Binary — formatul container care stă la baza fișierelor Outlook .msg.

ClasăScop
cfb_readerDeschide și parcurge fișierele CFB existente
cfb_writerSerializare documente CFB în octeți sau fișiere
cfb_documentReprezentare în memorie a unui fișier CFB
cfb_nodeNod individual de stocare sau flux în arborele de directoare
cfb_storageIntrare de stocare denumită
cfb_streamFlux denumit cu date binare

Operații cheie:

  • Deschide din fișier, flux sau octeți: cfb_reader::from_file(), cfb_reader::from_stream(), cfb_reader::from_bytes(), cfb_reader::from_buffer()
  • Enumeră conținutul: storage_ids(), stream_ids(), child_ids(), directory_entry_count()
  • Navighează prin cale: find_child_by_name(), resolve_path()
  • Inspectează nodurile: cfb_node::is_storage(), cfb_node::is_stream(), creation_time(), modified_time()
  • Scrie containere: cfb_writer::to_bytes(), cfb_writer::write_file(), cfb_writer::write_stream()

Citire și scriere fișier MSG

Subsystemul MSG gestionează formatul de mesaje Outlook pe deasupra CFB.

ClasăScop
msg_readerDeschide și analizează fișiere MSG
msg_writerSerializare documente MSG
msg_documentReprezentare în memorie a unui fișier MSG

Operații cheie:

  • Deschide fișiere MSG: msg_reader::from_file(), msg_reader::from_stream()
  • Inspectează metadatele: msg_document::major_version(), msg_document::minor_version(), msg_document::strict()
  • Scrie fișiere MSG: msg_writer::to_bytes(), msg_writer::write_file(), msg_writer::write_stream()
  • Convertește în CFB: msg_document::to_cfb_document() pentru acces CFB la nivel scăzut

API Mesaje MAPI de nivel înalt

Clasa mapi_message oferă o interfață de nivel înalt pentru crearea, citirea și conversia mesajelor de e‑mail.

Crearea mesajelor:

  • mapi_message::create() — construiește un mesaj nou cu subiect și corp
  • set_subject(), set_body(), set_html_body() — setează conținutul mesajului
  • set_sender_name(), set_sender_email_address(), set_sender_address_type() — setează expeditorul
  • set_internet_message_id() — setează antetul Message-ID
  • set_message_class() — setează clasa de mesaj MAPI
  • unicode_strings() / set_unicode_strings() — controlează codarea șirului Unicode

Se încarcă mesajele:

  • mapi_message::from_file() — încărcați dintr-o cale de fișier
  • mapi_message::from_stream() — încărcați dintr-un flux de intrare
  • mapi_message::from_msg_document() — încărcați dintr-un msg_document

Salvarea mesajelor:

  • save() — serializare în octeţi, flux sau fişier
  • to_msg_document() — conversie într-un msg_document pentru acces la nivel scăzut

Atașamente:

  • mapi_attachment::from_bytes(), mapi_attachment::from_stream() — încarcă datele atașamentului
  • mapi_attachment::is_embedded_message() — verifică dacă atașamentul este un MSG încorporat
  • mapi_attachment::load_data() — încarcă în mod întârziat conținutul atașamentului

Proprietăţi MAPI:

  • mapi_property::property_id(), property_type(), property_tag() — identificarea proprietății
  • mapi_property::set_value(), flags(), set_flags() — manipularea proprietății
  • mapi_property_collection::remove() — eliminarea proprietăților dintr‑o colecție

Conversie EML și MIME

Convertiți între formatul Outlook MSG și EML standard (RFC 5322 / MIME):

  • mapi_message::load_from_eml() — analizează un fișier .eml într-un mapi_message
  • mapi_message::save_to_eml() — serializați un mapi_message în format EML

Subiectul, corpul, expeditorul, destinatarii și atașamentele sunt păstrate pe parcursul round‑trip‑urilor.


Enumerări și constante

EnumScop
common_message_property_idIdentificatori standard de proprietăți MAPI (subject, body, sender, attachments)
property_type_codeCoduri de tipuri de proprietăți MAPI (integer, string, binary, time, GUID)
msg_storage_roleRoluri de stocare în fișierele MSG (message, recipient, attachment)
directory_object_typeTipuri de intrări în directorul CFB (storage, stream, root)
directory_color_flagFlaguri de culoare ale arborelui roșu-negru pentru intrările din directorul CFB
sector_markerValori speciale de sector în tabelele de alocare a fișierelor CFB
 Română