Características
Descripción general de la característica
Aspose.Email FOSS for C++ proporciona una API en capas para trabajar con archivos Outlook MSG y
contenedores Compound File Binary (CFB). La biblioteca tiene 26 clases públicas en dos
sub‑sistemas: CFB y MSG/MAPI.
Acceso al contenedor CFB
El subsistema CFB lee y escribe el formato Microsoft Compound File Binary — el formato de contenedor subyacente de los archivos Outlook .msg.
| Clase | Propósito |
|---|---|
cfb_reader | Abrir y recorrer archivos CFB existentes |
cfb_writer | Serializar documentos CFB a bytes o archivos |
cfb_document | Representación en memoria de un archivo CFB |
cfb_node | Nodo individual de almacenamiento o flujo en el árbol de directorios |
cfb_storage | Entrada de almacenamiento con nombre |
cfb_stream | Flujo con nombre con datos binarios |
Operaciones clave:
- Abrir desde archivo, flujo o bytes:
cfb_reader::from_file(),cfb_reader::from_stream(),cfb_reader::from_bytes(),cfb_reader::from_buffer() - Enumerar contenidos:
storage_ids(),stream_ids(),child_ids(),directory_entry_count() - Navegar por ruta:
find_child_by_name(),resolve_path() - Inspeccionar nodos:
cfb_node::is_storage(),cfb_node::is_stream(),creation_time(),modified_time() - Escribir contenedores:
cfb_writer::to_bytes(),cfb_writer::write_file(),cfb_writer::write_stream()
Lectura y escritura de archivos MSG
El subsistema MSG maneja el formato de mensaje de Outlook sobre CFB.
| Clase | Propósito |
|---|---|
msg_reader | Abrir y analizar archivos MSG |
msg_writer | Serializar documentos MSG |
msg_document | Representación en memoria de un archivo MSG |
Operaciones clave:
- Abrir archivos MSG:
msg_reader::from_file(),msg_reader::from_stream() - Inspeccionar metadatos:
msg_document::major_version(),msg_document::minor_version(),msg_document::strict() - Escribir archivos MSG:
msg_writer::to_bytes(),msg_writer::write_file(),msg_writer::write_stream() - Convertir a CFB:
msg_document::to_cfb_document()para acceso de bajo nivel CFB
API de Mensaje MAPI de Alto Nivel
La clase mapi_message proporciona una interfaz de alto nivel para crear, leer y convertir mensajes de correo electrónico.
Creando mensajes:
mapi_message::create()— crear un nuevo mensaje con asunto y cuerposet_subject(),set_body(),set_html_body()— establecer el contenido del mensajeset_sender_name(),set_sender_email_address(),set_sender_address_type()— establecer el remitenteset_internet_message_id()— establecer el encabezado Message-IDset_message_class()— establecer la clase de mensaje MAPIunicode_strings()/set_unicode_strings()— controlar la codificación de cadenas Unicode
Cargando mensajes:
mapi_message::from_file()— cargar desde una ruta de archivomapi_message::from_stream()— cargar desde un flujo de entradamapi_message::from_msg_document()— cargar desde unmsg_document
Guardando mensajes:
save()— serializar a bytes, flujo o archivoto_msg_document()— convertir a unmsg_documentpara acceso de bajo nivel
Adjuntos:
mapi_attachment::from_bytes(),mapi_attachment::from_stream()— cargar datos del adjuntomapi_attachment::is_embedded_message()— comprobar si el adjunto es un MSG incrustadomapi_attachment::load_data()— cargar perezosamente el contenido del adjunto
Propiedades MAPI:
mapi_property::property_id(),property_type(),property_tag()— identificación de propiedadesmapi_property::set_value(),flags(),set_flags()— manipulación de propiedadesmapi_property_collection::remove()— eliminar propiedades de una colección
Conversión de EML y MIME
Convertir entre el formato Outlook MSG y el estándar EML (RFC 5322 / MIME):
mapi_message::load_from_eml()— analizar un archivo.emlen unmapi_messagemapi_message::save_to_eml()— serializar unmapi_messageal formato EML
El asunto, el cuerpo, el remitente, los destinatarios y los archivos adjuntos se conservan a través de viajes de ida y vuelta.
Enumeraciones y Constantes
| Enum | Propósito |
|---|---|
common_message_property_id | Identificadores estándar de propiedades MAPI (asunto, cuerpo, remitente, adjuntos) |
property_type_code | Códigos de tipo de propiedad MAPI (entero, cadena, binario, tiempo, GUID) |
msg_storage_role | Roles de almacenamiento dentro de archivos MSG (mensaje, destinatario, adjunto) |
directory_object_type | Tipos de entradas de directorio CFB (almacenamiento, flujo, raíz) |
directory_color_flag | Banderas de color de árbol rojo‑negro para entradas de directorio CFB |
sector_marker | Valores especiales de sector en tablas de asignación de archivos CFB |