Aspose.Email FOSS para C++ es una biblioteca de código abierto y licenciada por MIT para trabajar con los archivos de Microsoft Outlook .msg y contenedores de archivo binario (CFB). Incluye los títulos a través de CMake y comience inmediatamente leyendo, creando y procesando mensajes de correo electrónico sin instalar Microsoft Outlooku o cualquier tiempo de trabajo propiedad.
La biblioteca proporciona dos niveles de acceso. en el nivel bajo, cfb_reader y cfb_writer dan control completo sobre los contenedores binarios CFB - cruzar las entradas de directorio, leer y escribir nodos de almacenamiento y datos de flujo, e inspeccionar la disposición del sector crudo. msg_reader e msg_writer manejan el formato MSG en la parte superior de CFb, exponen los flujos de propiedad MAPI, tablas de recipientes, y sub-stores de adhesión. En el alto nivel,mapi_message le permite crear nuevos mensajes desde escratch, leyendo sujetos, cuerpos, receptores y adjuntos y converter entre el formato MSL y EML.
La biblioteca se construye en cualquier plataforma con un compilador C++17 y no tiene dependencias externas, lo que la hace adecuada para Windows, Linux, macOS, contenedores Docker y sistemas integrados.
Se ofrece una edición empresarial con características adicionales como Aspose.Email for C++.
cfb_reader::from_file(), cfb_reader::from_stream() o cfb_reader::from_bytes().storage_ids(), stream_ids() y child_ids() , y navega las hierarquías nestas con resolve_path().cfb_node::is_storage() y cfb_node::is_stream(), lee las timestamps a través de creation_time() e modified_time().cfb_document y se serializan a bajetas o archivos a través de cfb_writer::to_bytes() o cfb_writer::write_file()..msg — acceso directo a CFD permite la inspección y reparación forense.msg_reader::from_file() o msg_reader::from_stream() y acceda a las substramas de propiedades MAPI y sub-encuentros de adhesiones.msg_document con msg_writer::to_bytes() o msg_writer::write_file().msg_document::major_version(), msg_document::minor_version() y comprobar la estrictidad con msg_document::strict().msg_document::to_cfb_document()..msg provienen de los directorios de Archivo y extraen metadatos o anexos.mapi_message::create(), luego fija el sujeto, cuerpo y cuerpo HTML a través de set_subject() , set_body() y set_html_body().set_sender_name(), set_sender_email_address() y set_sender_address_type() para el mensaje saliente.mapi_attachment::from_bytes() y mapi_attachment::from_stream(), y véase para mensajes incorporados a través de is_embedded_message().mapi_message::save() y ricar conmapi_message::from_file() o mapi_message::from_stream()..eml (RFC 5322 / MIME) en un objeto completo mapi_message a través de mapi_message::load_from_eml().mapi_message de vuelta al formato MIME con save_to_eml()..eml y .msg en un formato único.Abra un archivo de Outlook MSG desde una corriente y imprime el tema — no se requiere Microsoft Outlook.
#include <fstream>
#include <iostream>
#include "aspose/email/foss/msg/mapi_message.hpp"
int main()
{
std::ifstream input("sample.msg", std::ios::binary);
auto message = aspose::email::foss::msg::mapi_message::from_stream(input);
std::cout << message.subject() << '\n';
}
Construye un correo electrónico completo con el remitente, recipiente y anexo, luego escriba en los formatos MSG y EML.
#include <fstream>
#include "aspose/email/foss/msg/mapi_message.hpp"
int main()
{
auto message = aspose::email::foss::msg::mapi_message::create("Hello", "Body");
message.set_sender_name("Alice");
message.set_sender_email_address("alice@example.com");
message.add_recipient("bob@example.com", "Bob");
message.add_attachment("note.txt", std::vector<std::uint8_t>{'a', 'b', 'c'}, "text/plain");
std::ofstream msg_output("hello.msg", std::ios::binary);
message.save(msg_output);
std::ofstream eml_output("hello.eml", std::ios::binary);
message.save_to_eml(eml_output);
}